Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/100.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++ - Fatal编程技术网

Ios 实例化时初始化一个新数组

Ios 实例化时初始化一个新数组,ios,objective-c++,Ios,Objective C++,我正在用最新的SDK开发一个iOS应用程序 我有一个Objective-C++类,它具有以下两个属性: @interface MyClass : NSObject @property (nonatomic) int* road; @property (nonatomic) int* cars; ... @end 在init方法中: _road = new int[16] (0); _cars = new int[16] (0); 但是我得到了这个错误:数组“new”不能

我正在用最新的SDK开发一个iOS应用程序

我有一个
Objective-C++
类,它具有以下两个属性:

@interface MyClass : NSObject

@property (nonatomic) int* road;
@property (nonatomic) int* cars;

...

@end
init
方法中:

    _road = new int[16] (0);
    _cars = new int[16] (0);
但是我得到了这个错误:
数组“new”不能有初始化参数

读到这里,他们说我可以用这种方式初始化它们


如何初始化这些变量?

要解决问题,请使用以下代码:

_road = new int[16] ();
_cars = new int[16] ();

它将数组的所有成员初始化为默认值。

要解决问题,请使用以下代码:

_road = new int[16] ();
_cars = new int[16] ();

初始化数组的所有成员为默认值。

iso C++不允许指定构造函数参数。您链接的教程可能是指CLAN中不可用的语言扩展。

< P> ISO-C++不允许指定构造函数参数。您链接的教程可能引用了clang中不可用的语言扩展。

如果总是有16个元素,为什么还要麻烦分配呢?为什么不
std::vector
?@特洛伊木马我可以在iOS项目中使用std库吗?是的。我总是这么做。如果总是有16个元素,为什么还要费心分配呢?为什么不
std::vector
?@特洛伊木马我可以在iOS项目中使用std库吗?是的。我总是这样做。