【发布时间】:2014-10-25 23:54:03
【问题描述】:
我是 C++ 新手,遇到错误。
基本上我有一个变量char myName[150] 并有一个名为
void setName(char myNames) {
this->myName = myNames;
}
我的错误是 myName[150] 不等于 myNames。我认为编译器试图说出不兼容的类型,但我不知道如何修复我的代码。
另外,我有兴趣多次存储两组值。例如,{[0,10], [5,15], [6,69]...} - 我有这样的东西是对的吗
int **d[]; /dynamic array - grows in size and not fixed
void setValues(int a, int b){
//NEED HELP WITH IMPLEMENTATION HERE
}
如果有人能帮助我解决我的错误和问题,我将不胜感激。我非常热衷于学习这种 C++ 语言 - 我真的很喜欢 C++ 和 C,并希望我能将它们作为我的第一门编程语言来学习
【问题讨论】:
-
你需要停止使用方括号和星号,开始使用
std::string。 -
@KerrekSB 它必须是 char 因为我想限制存储的用户输入。例如,我不希望用户输入长名称,因为它不方便
-
但现在您总是支付 150 个字符,即使是短名称!您描述的限制应在其他地方强制执行。
-
@KerrekSB 抱歉,我正在尝试为每个用户名保留最多 150 个字符。
-
大多数用户名甚至不会接近那个长度,所以你只是在浪费大量内存。您最好使用
std::string,不仅可以节省内存,还可以用于自己处理所有内存管理并提供许多有用的通用功能并使代码更简洁的对象。
标签: c++ arrays char dynamic-arrays mutators