【发布时间】:2013-06-15 11:26:47
【问题描述】:
为什么以下作业不起作用?如果可能的话,我想要一个低层次的解释。另外,这是我得到的编译器错误:将 'char*' 分配给 'char [20]' 时的类型不兼容
class UCSDStudent {
char name[20];
public:
UCSDStudent( char name[] ) {
//this-> name = name; does not work! Please explain why not
strcopy( this -> copy, copy ); //works
}
};
【问题讨论】:
-
好吧,伙计们,我不会撒谎,我自己推断出这么多。
-
或许对 C++ arrays 的这种解释就足够了?
-
@chris 谢谢!这确实回答了我的问题。它的字面意思是:“没有特别的原因,数组不能相互分配。”大声笑。
-
好吧,当您需要数组时,总是有
std::array。除其他外,它还支持分配。不过,std::string是你应该在这里使用的。
标签: c++ arrays char-pointer