声明一个新的长数组c ++

时间:2016-12-19 08:01:22

标签: c++

我是否正确宣布了这一点?

string regular = "TEST";
long[] cipher = new long[regular.length()];

获取此编译错误:expected unqualified-id before '[' token

1 个答案:

答案 0 :(得分:8)

new表达式返回指针,因此cipher必须为1:

long *cipher = new long[regular.length()];

但是使用原始数组很容易出错。考虑替换std::vector代替:

std::vector<long> cipher(regular.length());