c++ - 为什么 cocos 2d-x v3 在 c++ 中如此频繁地使用指针?

标签 c++ pointers cocos2d-x cocos2d-x-3.0 auto

我是来自 Java 的 C++ 程序员新手,我喜欢 C++。据我所知,我认为指针通常指向已经初始化的对象的地址。在 coocos2d 中,通常为了创建一个对象,您会按照以下行编写一些内容:

      auto mysprite=Sprite::create("image.png");

并为 mysprite 使用一个方法,你会这样写:

   mysprite->mymethod(); 

我对指针的基本了解是它们的用法如下:

   int* mypoint;
   int x=7;
   mypoint=&x;

来自 java,这很令人困惑,为什么不创建一个像这样调用类本身的对象,或者什么时候创建这样的对象:

      Sprite* mysprite=Sprite::create("image.png");
       mysprite.mymethod();

我认为完全理解这一点很重要,因为 cocos2d 库中的许多构造函数都在构造函数中使用指针,我发现自己盲目地将 auto 写为变量的标识符,但我不确定为什么。感谢您提前澄清。

最佳答案

my question is why would i use "->" instead of "."

因为左边的东西是指针。

如果 a 是指针,则 a->b(*a).b 相同,只是它看起来更好。

如果 a 是一个指针,那么 a.b 是一个错误。

关于c++ - 为什么 cocos 2d-x v3 在 c++ 中如此频繁地使用指针?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42895487/

相关文章:

c++ - 如何提取字符串中任意位置的下一个整数?

iphone - Cocos2D-X游戏中的Chartboost

android - 在主线程上运行回调

c++ - 如果我在 init 之外定义,如何在 ccTouchEnded 中删除子项

c++ - 读取以逗号分隔的数字并将它们写入以制表符分隔的文件

c++ - Qt 在主线程上运行 lambda

c++ - 在 C++ 中实现正态分布的制服比率

c - 为什么会发生堆损坏?

c++通过指针访问数组

objective-c - 指向Objective-C中的错误指针的指针