C 对象指针
C++ Object Pointer
我在这里需要一些帮助,您能告诉我如何获得P2变量内容吗?我可以通过T1和P1获得变量,但我想使用P2来获得健康和法力值。
#include <iostream>
using namespace std;
class Mage{
public:
int health;
int mana;
Mage(int health, int mana){
this->health = health;
this->mana = mana;
}
};
int main(){
Mage t1 = Mage(1,1);
Mage *p1 = &t1;
Mage **p2 = &p1;
cout << t1.health << endl;
cout << p1->health << endl;
cout << "how to print variable content with p2?" << endl;
return 0;
}
使用
cout << (*p2)->health << endl;
*
具有两个含义:声明指针并取消指针。但是,由于->
比*
更高的优先级,因此您需要将*p2
放入背包中。
您的示例建议您正在寻找一个单一的操作员,该操作员立即将两次退出。C 中没有。
实现自己想要的两种方法。第一个已经提到并且去了
std::cout << (*p2)->health << std::endl;
可以通过指出p1->health
等效于(*p1).health
来找到第二个。因此,(*p2)->health
等于(**p2).health
。连续:
std::cout << t1.health << std::endl;
std::cout << (*p1).health << std::endl;
std::cout << (**p2).health << std::endl;
相关文章:
- 为什么指针对象没有调用默认构造函数
- 如何访问双指针对象中的方法
- 如何使用智能指针对象执行成员函数指针
- 调用带有指针对象错误的指针变量
- 如何从模板类重载创建的指针对象上的运算符?
- C++指针对象的运算符重载
- 如何初始化数组指针对象
- 如何打印出唯一指针对象向量中的值(基于范围的循环)?C++
- C++指针对象差异
- 涉及继承,指针对象的交易以及何时进行的问题
- 表达式必须在C 中具有指针对象类型
- 下标需要数组或指针类型表达式必须具有指针对象类型
- 字符指针对象和相应的字符数组元素比较
- 如何在 c++ 中克隆为弱指针对象
- 指针对象使用CPP中的指针表达式进行比较
- Visual Studio中智能指针对象的自定义视图
- 使用指针 /对象 /模板参数正确构成
- 如果我确定只有一个线程一次处理指针/对象,则C/C 仍应使用同步
- 如何将值分配给指针对象 c++
- 更改智能指针对象,然后访问它