Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/119.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/22.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
Ios 如何使用自定义类型(复杂)对象创建常量_Ios_Objective C_Constants - Fatal编程技术网

Ios 如何使用自定义类型(复杂)对象创建常量

Ios 如何使用自定义类型(复杂)对象创建常量,ios,objective-c,constants,Ios,Objective C,Constants,这不是一个简单的问题,比如创建一个常量字符串或一个数字,而是有一个自定义类型的常量或复杂对象,例如 //.h extern CSResourceName* const RESOURCE_COURSE_WRAPPER; //.m CSResourceName* const RESOURCE_COURSE_WRAPPER = [CSResourceName resourceNameWithName:@"wrapp

这不是一个简单的问题,比如创建一个常量字符串或一个数字,而是有一个自定义类型的常量或复杂对象,例如

//.h
extern CSResourceName* const RESOURCE_COURSE_WRAPPER;

//.m
CSResourceName* const RESOURCE_COURSE_WRAPPER = [CSResourceName 
                                          resourceNameWithName:@"wrapper" 
                                                     Extension:@"html"];
                    //here I've
                    //tried also differently like 
                    //[[CSResourceName new] initWithName:Extension:]
但编译器返回的初始值设定项元素不是编译时常量


有没有一种方法可以让一个常量和一个像这里这样的对象结合在一起?从其他类似于错误消息的问题中,我知道它不允许类是常量。在objective-c中,如何使复杂对象的值保持不变?

真的可能重复?复制我在问这个问题之前见过这个问题,我确信它不一样,并且没有一个建议的解决方案适用。您的常量是CSResourceName*类型。只是一个指针。您要求编译器将指针值设置为。。。一种方法的结果。在任何代码执行之前。也许您可以静态地为指向的const指针分配一块空间,但仍然需要通过执行代码来填充它@德斯德诺娃是对的。你的问题是个骗局。您可以在ObjC++中执行此操作,但不能在C中执行。请参阅,真正的答案是将自定义对象解析为常量,而不是声明这是一个指针,只是一个指针,因此请帮助我使用指针。。。