【发布时间】:2018-04-07 04:09:06
【问题描述】:
我在网上搜索了这个问题,但没有找到答案。如果我的班级有一个这样声明的受保护成员:char * arr[3] = {"Blah", "Blah", "Blah"}
我需要在析构函数中删除这个成员吗?如果是这样,正确的语法是什么?谢谢!
【问题讨论】:
-
如果你使用
new,你只需要delete。所以不行。这是一个可以存储在堆栈中的数组字面量。 -
@PaulRooney 有什么方法可以将这种方法声明为动态的?会是
char ** arr = new char*[3];吗? -
对字符串使用 std::string。您的编译器应该抱怨缺少 const。
-
@manni66 我不能使用字符串类,这是一个编程任务,他们希望所有字符串都存储为 char*
-
指向字符串常量的指针必须是
const char*。
标签: c++ arrays destructor