【发布时间】:2016-03-18 18:36:16
【问题描述】:
我尝试过的 Google 搜索将我引导到程序中存在错误的人。我宁愿只知道如何正确地做到这一点,也不愿从错误的代码中回溯。
我有一个数组,它是 const int。
在我的班级中,我想用相同数量的元素初始化一个不同的数组。
初始化第一个数组后,在我尝试过的类中:
int array[array.length()];
但是编译器抱怨它不是一个常量表达式。
即使我
const string thestring = "Dummy example";
const static int strlen = (int)thestring.length();
然后在第一节课:
class dostuff {
int newstring[strlen];
);
编译器还在抱怨我。
这让我先尝试做声明,例如:
const string thestring = "Dummy";
然后在类中,手工统计元素即可:
class Enigmatise {
int duplicatelengthstring[5]; // Just counted by hand. :-(
);
编译器现在很高兴它有一个常量表达式,但我不高兴,因为如果我将原则字符串的定义更改为“更多字符”,那么就由我来手动计算它们,或者 cout使用 .length(),然后在类中使用新的常量数值表达式,全部手动完成。这看起来很容易发生事故。
因此,如果我有一个
const string thestring = "Dummy example";
然后我如何在一个类中声明另一个与类中的 dummy 长度相等的数组?
【问题讨论】:
标签: arrays string class declaration