Jas*_*son 106
int main()
{
int size;
std::cin >> size;
int *array = new int[size];
delete [] array;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
不要忘记delete
你分配的每个数组new
.
Ben*_*igt 49
从C++ 11开始,有一个安全的替代方案new[]
,delete[]
它的零开销不同于std::vector
:
std::unique_ptr<int[]> array(new int[size]);
Run Code Online (Sandbox Code Playgroud)
在C++ 14中:
auto array = std::make_unique<int[]>(size);
Run Code Online (Sandbox Code Playgroud)
以上两者都依赖于相同的头文件, #include <memory>
jve*_*zey 25
您可能需要考虑使用标准模板库.它简单易用,而且您不必担心内存分配.
http://www.cplusplus.com/reference/stl/vector/vector/
int size = 5; // declare the size of the vector
vector<int> myvector(size, 0); // create a vector to hold "size" int's
// all initialized to zero
myvector[0] = 1234; // assign values like a c++ array
Run Code Online (Sandbox Code Playgroud)
int* array = new int[size];
Run Code Online (Sandbox Code Playgroud)