XCode使用技巧

简介: XCode使用技巧自动生成get、set方法@property用法#import @interface People : NSObject@property int age;@end XCode 4.

XCode使用技巧

自动生成get、set方法

@property

  • 用法

    
    #import <Foundation/Foundation.h>
    
    @interface People : NSObject
    @property int age;
    @end

    XCode 4.+版本以后,@property功能已经代替了下面要介绍的@synthesize功能,写了@property后,甚至连成员变量的声明都不用我们去写,主要为我们做了下面几件事:

    • 自动生成了以下划线”_”开头的成员变量(XCode 4.x+)
    • 自动声明了成员变量的get、set方法
    • 自动实现了成员变量的get、set方法(XCode 4.x+)
  • 注意

    只能用在@interface - @end中间

@synthesize

由于XCode 4.+ 版本的新特性
@property独揽了@synthesize的功能,进一步简化了代码
所以可以理解成XCode 4.+ 以后就可以不再使用@synthesize

  • 用法

    
    #import "People.h"
    
    @implementation People
    @synthesize age;
    // 或者
    // @synthesize age = _age;
    @end
  • 作用

    • 自动实现了成员变量的get、set方法(XCode 4.+)
    • 自动生成以下划线”_”开头的成员变量(没有定义的情况下)
  • 注意

    只能用在@implementation - @end中间

断点调试

设置断点

在代码左侧单机

P1

取消/删除断点

P2

单步调试

P3

设置完断点以后,再运行,程序会停留在第一个断点处

截图下面红色位置会出现一排调试按钮
最下面部分显示当前调式步骤的结果

注释

#pragma mark是XCode特有的注释方式

  • 对方法的单独注释

    #pragma mark 姓名的set方法
    
  • 对整体的分割注释

    #pragma mark - 姓名的set方法
    

#import "People.h"

@implementation People

#pragma mark - 下面是姓名的getset方法

#pragma mark set方法
- (void)setName:(NSString *)name
{
    _name = name;
}
#pragma mark get方法
- (NSString *)name{
    return _name;
}

#pragma mark - 下面是年龄的getset方法

#pragma mark set方法
- (void)setAge:(int)age
{
    _age = age;
}
#pragma mark get方法
- (int)age
{
    return _age;
}

@end

P4

相关文章
|
计算机视觉 iOS开发
在XCode上使用OpenCV
在XCode上使用OpenCV
323 0
在XCode上使用OpenCV
|
Android开发 iOS开发 Perl
xcode 使用笔记
最近做个 IM 相关的项目,为了搞个开源的 IOS 版本,因此开启了 XCode 开发使用 遇见了如下几点问题 环境说明 Mac macOS High Sierra.
1238 0
|
7月前
|
jenkins Unix 持续交付
个人记录jenkins编译ios过程 xcode是9.4.1
个人记录jenkins编译ios过程 xcode是9.4.1
102 2
|
7月前
|
Linux 数据安全/隐私保护 iOS开发
如何使用 Xcode 打包导出 IPA 文件并进行 iOS 应用内测,无需支付苹果开发者账号费用?
如何使用 Xcode 打包导出 IPA 文件并进行 iOS 应用内测,无需支付苹果开发者账号费用?
|
4月前
|
iOS开发 MacOS Perl
解决Xcode运行IOS报错:redefinition of module ‘Firebase‘和could not build module ‘CoreFoundation‘
解决Xcode运行IOS报错:redefinition of module ‘Firebase‘和could not build module ‘CoreFoundation‘
148 4
|
4月前
|
iOS开发 开发者
解决xcode doesn‘t support iphone’s ios 14.6 (18f72)
解决xcode doesn‘t support iphone’s ios 14.6 (18f72)
271 3
|
4月前
|
缓存 iOS开发
如何在Xcode删除某个版本的IOS模拟器
如何在Xcode删除某个版本的IOS模拟器
607 1