获取对象指针指向的对象
Get The Object Pointer Is Pointing To
我有一个QList,我在其中插入了对象的指针。我正在尝试迭代这个QList来读取这些对象的名称。每当我这样做的时候,我都会得到这些对象的地址,而不是读取对象名称本身。我想知道如何读取对象名称而不是地址?
QList<MyObject*> newObjectList;
QList<MyObject*>::iterator i;
MyObject *pNewObject = new MyObject(name);
MyObject.append(pNewObject);
for (i = newObjectList.begin(); i != newObjectList.end(); i++) {
cout << "n" << *i << "n";
}
当您取消引用i时,您需要调用函数来从对象中获取名称。类似这样的东西:
for (i = newObjectList.begin(); i != newObjectList.end(); i++) {
// i right now is the iterator, and points to a pointer. So this will need to be
// dereferenced twice.
cout << "n" << (*i)->getName() << "n";
}
当你取消对迭代器i(即*i
)的引用时,你是对类型为MyObject*
的对象的引用,它是一个指针,你必须再次取消对它的引用才能获得对对象的引用:
*(*i)
相关文章:
- 检查哪个对象调用了另一个对象的对象方法
- 如何从传递到对象的对象内部访问对象的类属性?
- C++,如何根据运行时条件构造引用不同 istream 对象的对象?
- 如何在C++中为增加但记住删除先前对象的对象分配唯一标识符
- 对象内部对象的重载功能
- 返回一个引用C++中另一个类对象的对象的有效方法
- 当对象被删除时,复制被删除对象的对象如何
- 在递归函数中更有效地创建对象和对象数组?C++
- 初始化多对象双对象<矢量<矢量<float>> >
- 基准、值、值类型、对象和对象类型(C++)
- 如何仅通过父类对象限制对象创建
- 由另一个对象重用对象的空间
- 在另一个对象 B 中创建对象 A 时,对象 A 是否是对象 B 的本地对象,对象 A 是否会存在于对象 B 的实例化之外?
- 为什么当我在构造函数中创建线程时,实例化对象和对象的指针的行为不同
- 堆变量与否 |* 新对象() ||对象()
- 对象 ** 到对象 * 之间的融合
- 如何创建功能以用受保护或私人侵犯的对象在对象内部操纵对象
- 包含另一个对象的对象,然后将其传递给它(C )
- 围绕另一个对象旋转对象
- 自动将对象添加到该对象父对象的向量中