iOS   发布时间:2022-05-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了objective-c – 声明@synthesize时的单和双下划线差异大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

在最近的 Xcode 4.3项目模板中,一些@synthesze被声明为: @synthesize window = _window; @synthesize managedObjectContext = __managedObjectContext; @synthesize managedObjectModel = __managedObjectModel; @synthesize persis
在最近的 Xcode 4.3项目模板中,一些@synthesze被声明为:

@synthesize window = _window;
@synthesize managedObjectContext = __managedObjectContext;
@synthesize managedObjectModel = __managedObjectModel;
@synthesize persistentStoreCoordinator = __persistentStoreCoordinator;
@synthesize navigationController = _navigationController;

有些带有双下划线(__)作为前缀.为什么?

与readonly属性有什么关系?

@property (strong,nonatomiC) UIWindow *window;
@property (readonly,strong,nonatomiC) NsmanagedObjectContext *managedObjectContext;
@property (readonly,nonatomiC) NsmanagedObjectModel *managedObjectModel;
@property (readonly,nonatomiC) NSPersistentStoreCoordinator *persistentStoreCoordinator;
@property (strong,nonatomiC) UINavigationController *navigationController;

解决方法

如果它们打算用在你自己的程序中,它们可能不应该使用双下划线.我希望这只是对编写该模板示例的人的疏忽.在实践中,它们不太可能导致任何问题.

C标准保留所有标识符,以双下划线开头,以供实现自己使用.由于Objective-C是C的超集,因此您不应该在Objective-C程序中使用这些标识符.从C规范,第7.1.3节保留标识符:

大佬总结

以上是大佬教程为你收集整理的objective-c – 声明@synthesize时的单和双下划线差异全部内容,希望文章能够帮你解决objective-c – 声明@synthesize时的单和双下划线差异所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。