Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone Xcode-绿色变量x黑色变量_Iphone_Xcode_Syntax Highlighting - Fatal编程技术网

Iphone Xcode-绿色变量x黑色变量

Iphone Xcode-绿色变量x黑色变量,iphone,xcode,syntax-highlighting,Iphone,Xcode,Syntax Highlighting,我有两节课。一个基本上是使用与第二个相同的文件创建的,还有一些其他的修改,但是它们基本上是相同的,特别是关于它们的声明文件(有类似的东西) @协议myClassDelegate //委托协议定义 @结束 @接口myClass:UIView{ 肌体; UIView*oneView; } @属性(非原子,赋值)id委托; @属性(非原子,保留)UIView*oneView; 然后我有一个视图,代表;on.m 您看到的代码对这两个类都是通用的 在这两个类的实现中,我多次使用这两个对象,例如: [de

我有两节课。一个基本上是使用与第二个相同的文件创建的,还有一些其他的修改,但是它们基本上是相同的,特别是关于它们的声明文件(有类似的东西)

@协议myClassDelegate
//委托协议定义
@结束
@接口myClass:UIView{
肌体;
UIView*oneView;
}
@属性(非原子,赋值)id委托;
@属性(非原子,保留)UIView*oneView;
然后我有一个视图,代表;on.m

您看到的代码对这两个类都是通用的

在这两个类的实现中,我多次使用这两个对象,例如:

[delegate doStuff]; // <-- do you see this blue delegate here? Xcode put it green when it is declared on .h first.

[delegate doStuff];// 我想XCode编辑器中单词的黑色意味着XCode并没有检测到这个单词作为实例变量。也许您忘记声明
delegate
实例变量了?因此,错误一定是在取消分配
委托时发生的

注意:您可以通过查看XCode的首选项来更改其语法高亮显示颜色:

如果已将属性标记为assign,则决不能在该类中释放它。这包括在Dealoc中。从您的书面记录中可以看出,您正在释放dealloc中的委托。请注意,您应该在dealloc中将变量设置为nil,或者如果您知道您已经使用完它,那么如果委托在其他地方意外释放,您将不会崩溃


至于颜色,我认为唯一可能影响这一点的是,如果您以相同的方式在两个文件中导入了“MyClassDelegate”

不能释放委托变量-它是一个赋值属性!抱歉,代码中有一个输入错误。oneView被声明为保留。Ant这一视图在一个类中显示为黑色,在另一个类中显示为绿色。给我出问题的类是变量为黑色的类。
[delegate doStuff]; // <-- do you see this blue delegate here? Xcode put it green when it is declared on .h first.