今天学了一下OC,以前也学过,不过快忘了,特地写个博客来记录一下学习进程
@interface Circle : NSObject:
{
@private:
int a;
int b;
}
//-代表是对象的函数
//+代表是类的函数
-(void) set:(int)a;
+(void) set:(int)b;
//以上便是在.h头文件中的声明
//方法的声明
@end
//编译器指令
@implementation
//函数的实现
-(void) set:(int)a{
self->a = a;
}
以上就是很基础的学习,以后还会扩展喔
在OC中可以扩展,.h文件是类的声明,.m文件是类的实现,也可以引入C文件,.mm文件可以引入C++文件
@autoreleasepool是系统自动释放池,可以释放内存
在main函数中的引用,
创建对象Circle *a=[[Circle alloc[init];
第一个用来分配内存,若没有Init则会什么也没有,所以Init 是用来初始化的
调用对象方法
[a set::6];
都是使用指针的方法
输入数据用scanf
富初始值的时候可以使用指针p->a = b;
具体学习方法
//1.百度 (ios)
//2.看苹果的官方文档(API接口网站)
//3.看博客
注意点:
1类的声明首字母大写,实例变量以下划线开头
2类的声明和实现都已@end结尾
3声明方法时,有多少个参数就有多少个参数
方法的声明:
- (void)sayHi;
- (void)eatWith:(NSString *)foodName;
- (int)getSumWithNum1:(int)num1 andNum2:(int)num2;
方法的实现
- (void)sayHi{
//在方法的实现中,无需创建对象可以直接访问类的成员变量
NSLog(@"我的名字是:%@",_name);
}
//实现一个参数的方法
- (void)eatWith:(NSString *)foodName{
NSLog(@"吃%@",eatFood);
}
//实现多个参数的方法
- (int)getSumWithNum1:(int)num1 andNum2:(int)num2{
return num1 + num2;
}