当我有一个像这样的指针时:
MyClass * pRags = new MyClass;
所以我可以使用
pRags->foo()
或
(*pRags).foo()
调用 foo。
为什么这两个是相同的?什么是 *pRags?
谢谢
最佳答案
Why are these two identical?
它们是等价的,因为规范说它们是等价的。内置 ->
是根据内置 *
和 .
定义的。
What is
*pRags
?
就是pRags
指向的MyClass
对象。 *
取消引用 指针,生成指向的对象。
有关更多信息,请考虑拿起 a good introductory C++ book .
关于c++ 问题,关于 * 和 ->,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5926113/