分配一个新的bool数组指针

时间:2015-06-17 02:21:24

标签: c++ arrays pointers

我很好奇你如何在c ++中分配一个新的布尔数组指针。我做了一些环顾四周,但找不到任何类似于我学会分配新指针的东西。

分配一个我学会做的新的int指针

int * intPointer = new int;

布尔数组的正确方法是什么?我试过了:

bool * boolArr[] = new [] bool;

但我得到了错误"预期的类型说明符' ['令牌

3 个答案:

答案 0 :(得分:7)

如果要动态分配布尔数组,则需要执行

bool *arr = new bool[10];

您必须指定数组大小。

静态分配的语法是

bool arr[10];

答案 1 :(得分:2)

如果要动态分配布尔数组,则需要执行

std::vector<bool> arr;
arr.reserve(10);

您不必指定尺寸。

静态分配的语法是

std::array<bool, 10> arr;

答案 2 :(得分:0)

动态分配大小为n的布尔数组

bool* arr = new bool[n];

静态分配。

bool arr[n];

动态数组是通过 Heap Memory 分配的,这在数组大小可能很大的情况下更好。

理想情况下,您还应该使用

手动删除动态分配的数组空间
delete[] arr

在临时使用的情况下,删除分配的空间可能是可选的,但是绝对鼓励您将其作为专业实践。