二尿赚、代碼
#import <Foundation/Foundation.h>
#pragma mark 類
@interface IPhone : NSObject
{
@public
float _model; // 型號
int _cpu; // cpu
double _size; // 尺寸
int _color; // 顏色
}
-(void)about;
/*
C語言的函數(shù) :
沒有返回值沒有參數(shù)的
沒有返回值參數(shù)的
有返回值沒有參數(shù)的
有返回值有參數(shù)的
OC的方法 :
沒有返回值沒有參數(shù)的 - (void)text1;
沒有返回值參數(shù)的 - (void)text2WithNumber:(int)number;
有返回值沒有參數(shù)的 - (int)text3WithNumber;
有返回值有參數(shù)的 - (int)text2WithNumber:(int)number andNumber2:(int)number2; // 多個參數(shù)
*/
// 有返回值沒有參數(shù)的, 讀取短信
-(char *)loadMessage;
// 有返回值有參數(shù)的, 打電話
//int signal(int number)
//call
// 注意 : OC中的方法如果有參數(shù), 那么每個參數(shù)的數(shù)據(jù)類型前面添加上一個 :
// 注意 : 當(dāng)前這個有參數(shù)的方法 他的方法名稱 是 signal :
// 冒號也是方法名稱的一部分
-(int) signal:(int)number;
// 有返回值并且多個參數(shù)的,發(fā)短信
// sendMessage(int number, char *content)
// 下面這個方法名稱是 sendMessage::
//- (int)sendMessage:(int)number :(char *)content;
// 為了提高我們的閱讀性, OC方法允許我們 給方法給每個參數(shù)添加一個表情,說明當(dāng)前參數(shù)的含義
// 注意 : 標(biāo)簽也是方法名的一部分
// 方法名 是 sendMessageWithNumber:andContent:
- (int)sendMessageWithNumber:(int)number andContent:(char *)content;
@end
#pragma mark 實(shí)現(xiàn)
@implementation IPhone
// 行為的實(shí)現(xiàn)
-(void)about
{
// NSLog(@"打印本機(jī)信息\n");
// 如果在對象方法里面 想訪問該對象的屬性, 可以直接寫上 _屬性名稱即可
NSLog(@"型號 = %f cpu = %i,尺寸 = %f, 顏色 =%i",_model,_cpu,_size,_color);
}
-(char *)loadMessage
{
char *content = "老婆我們家我做主";
return "lyh is cool";
}
-(int) signal:(int)number
{
NSLog(@"打電話 %i",number);
return 1;
}
/*
- (int)sendMessage:(int)number :(char *)content
{
NSLog(@"發(fā)短息 %i, 內(nèi)容: %s",number,content);
return 1;
}
*/
- (int)sendMessageWithNumber:(int)number andContent:(char *)content
{
NSLog(@"發(fā)短息 %i, 內(nèi)容: %s",number,content);
return 1;
}
@end
#pragma mark main函數(shù)
int main(int argc, const char * argv[])
{
IPhone *p = [IPhone new];
p->_model = 4;
p->_size = 3.5;
p->_color = 0;
p->_cpu = 1;
#warning 注意 : OC中的NSLog 對C語言的字符串支持不是很好,如果返回的是 中文的C語言字符串 可能輸出的是亂碼, 也有可能什么都不輸出
[p about];
char *content = [p loadMessage];
NSLog(@"content %s",content);
[p signal:10010];
// [p sendMessage:10010 :"fuck"];
[p sendMessageWithNumber:10010 andContent:"hehe"];
return 0;
}
![輸入圖片說明](https://static.oschina.net/uploads/img/201707/10151931_BC1j.png)
輸入圖片說明