相关疑难解决方法(0)

动态数组的初始化列表?

可以为静态数组的定义提供初始化列表.例:

int main()
{
  int int_static[2] = {1,2};
}
Run Code Online (Sandbox Code Playgroud)

动态数组是否可以使用类似的初始化列表?

int main()
{
  int* int_ptr = new int[2];
}
Run Code Online (Sandbox Code Playgroud)

这更接近我想要做的事情:

struct foo
{
  foo(){}
  foo(void * ptr): ptr_(ptr) {}
  void * ptr_;
};

int main()
{
  foo* foo_ptr = new foo[10];
}
Run Code Online (Sandbox Code Playgroud)

在初始化时,不应该调用默认构造函数,而是调用foo:foo(void*).

对于动态数组的静态初始化程序列表而言,如果加速器核心的实时编译只有有限的堆栈可用,但同时用(加速器编译时间=主机运行时间)静态初始化列表.

我假设没有(因为这需要编译器生成额外的代码,即将参数的值复制到堆位置).我认为c ++ 0x支持其中一些,但我无法使用它.现在我可以使用这样的结构.也许有人知道一招

最好!

c++ arrays dynamic

12
推荐指数
2
解决办法
3万
查看次数

标签 统计

arrays ×1

c++ ×1

dynamic ×1