Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ C++;对象数组为每个对象返回相同的字符*_C++_Arrays_Pointers - Fatal编程技术网

C++ C++;对象数组为每个对象返回相同的字符*

C++ C++;对象数组为每个对象返回相同的字符*,c++,arrays,pointers,C++,Arrays,Pointers,printObj();只是不能objArr[k]getObjName() 这是我创建的setter和getter: for (int k = 0; k < playerCount; ++k) { objArr[k].printObj(); } 我做错了什么 *我不能使用向量和字符串这是常见的指针错误。 如果您的类/数据结构拥有并分配了指针,那么您应该实现自己的复制构造函数,该构造函数将为char*name分配新内存。 现在所有对象都指向一个字符数组,而不是拥有自己的字符数组 如果

printObj();只是不能objArr[k]getObjName()

这是我创建的setter和getter:

for (int k = 0; k < playerCount; ++k) {
    objArr[k].printObj();
}
我做错了什么


*我不能使用向量和字符串这是常见的指针错误。 如果您的类/数据结构拥有并分配了指针,那么您应该实现自己的复制构造函数,该构造函数将为char*name分配新内存。 现在所有对象都指向一个字符数组,而不是拥有自己的字符数组

如果你不明白我在说什么,请先阅读以下内容:


错误最有可能发生在
MyObject
类中存储和管理
objName
的方式上。您可以通过发布类的代码获得更多帮助。
for (int k = 0; k < playerCount; ++k) {
    objArr[k].printObj();
}
char *MyObject::getObjName() const {
    return this->objName;
}

void MyObject::setObjName(char *name) {
    this->objName = name;
}