use*_*702 2 c++ arrays initialization
如果我使用指针,如何给出新的初始化数组的值?例如
int* array = new int[3]; <- I want to give the values {1,2,3} on the same row but not:
array[0] = 5;
array[1] = 3;
array[2] = 4;
Run Code Online (Sandbox Code Playgroud)
您可以使用大括号括起初始值设定项:
int* array = new int[3]{1, 2, 3};
Run Code Online (Sandbox Code Playgroud)
通常的警告是,你需要确保你打电话delete []
的array
.这比第一眼看到的更难保证.出于这个原因和其他原因,使用以下内容可能是一个更好的主意std::vector<int>
:
std::vector<int> v{1,2,3};
Run Code Online (Sandbox Code Playgroud)
如果你坚持使用较旧的C++ 11之前的实现,那么就不能使用大括号括起来的初始化器语法.您将不得不在某个级别使用循环(无论是您自己的循环,还是使用某些标准或第三方库函数.)
归档时间: |
|
查看次数: |
45 次 |
最近记录: |