我很好奇您如何在c ++中分配一个新的布尔数组指针。我环顾四周,但找不到与我学会分配新指针相似的东西。
分配一个我已经学会做的新的int指针
int * intPointer = new int;
布尔数组的正确方法是什么?我已经尝试过:
bool * boolArr[] = new [] bool;
但是我得到了错误“'['标记之前的预期类型说明符
如果要动态分配布尔数组,则需要这样做
bool *arr = new bool[10];
您必须指定数组大小。
静态分配的语法是
bool arr[10];
如果要动态分配布尔数组,则需要这样做
std::vector<bool> arr;
arr.reserve(10);
您不必指定大小。
静态分配的语法是
std::array<bool, 10> arr;
Dynamically分配大小为n的布尔数组
bool* arr = new bool[n];
静态分配。
bool arr[n];
动态数组是通过堆内存分配的,这对于数组大小可能很大的情况更好。
理想情况下,您还应该使用]手动删除动态分配的数组空间>>delete[] arr
在临时使用情况下,删除分配的空间可能是可选的,但绝对鼓励您将其作为专业实践。