[Objective-c 基础

A. 命令行编译和XCode编译

1.在存在多个.m源码实现文件的情况下,若根据需要引入.m文件,使用命令行仅仅编译主.m文件即可,但是XCode会同时编译全部.m文件,会发生编译错误(重复定义全局变量或函数)
解决方案:
使用.h和.m文件,分开声明和定义
 
 
B.XCode功能
1.自动生成.h和.m
2.保存、引用快捷代码块
3.方法索引注释
#pragma mark 方法的说明
#pragma mark - 方法的说明 加入分组线
4.链接错误查看,使用左上角的感叹号logo
 
C.点语法
实际是调用getter或者setter
 1 int main(int argc, const char * argv[]) {
 2     @autoreleasepool {
 3         Person *p = [Person new];
 4         p.name = @"李四";
 5         p.age = 21;
 6         NSLog(@"姓名:%@, 年龄是%d", p.name, p.age);
 7         
 8     }
 9     return 0;
10 }
D.成员变量作用域
作用域关键字
1.@public 任何地方都可以直接访问
 
2.@protected  能在当前类和子类直接访问
在.h文件中声明的变量默认是@protected状态
 
3.@private 只能在当前类的方法中直接访问
在.m文件中声明的变量默认是@private状态,同时不能跟.h中声明的变量同名
 
4.@package 只要在同一个框架中,就能访问
 
5.无论在.h还是.m都不能重复声明同名成员变量,会发生编译错误
 
 
原文地址:https://www.cnblogs.com/hellovoidworld/p/4119355.html