“Initializer is not a compile time constant” error works in .mm?

后端 未结 1 909
栀梦
栀梦 2020-12-21 03:22

I\'m puzzled by a situation I\'m observing and would love some insight. First, I\'m using Xcode 5, with LLVM 5 compiler options set to defaults.

I have a line in a .

相关标签:
1条回答
  • 2020-12-21 04:13

    As you mentioned, in C and Objective-C static variables can only be initialised with compile-time constants. In C++ (and therefore Objective-C++) on the other hand, static variables are assigned at run time, before main runs.

    For more details have a look at Eli Bendersky's Non-constant global initialization in C and C++

    0 讨论(0)
提交回复
热议问题