您的位置:首页 > 编程语言 > C语言/C++

vs2013 编译c++是发现惊天bug

2014-10-22 21:43 806 查看
高级语言c++和java的this指针有一个共同的特点,即代表方法定义所在的类的实例化对象

但是今天,我在使用cocos2dx 编写代码的时候发现一个惊天大bug,有图为真相

在一个class中定义的this竟然会改变,导致程序运行错误,难道这个是c++11的新特性?

下面请看图:

图一



看到标红色框框的地方的地址了吗 ,node和this的地址是一样的,而这个定义在GameScene中的disAnimate 方法中的this的指针的地址应该是下面的图中红色框标记的才对



上面两图是我在debug时一步步跟的时后,发现的就是由于程序进入disAnimate方法后,这个this指针不是指向他所在的class GameScene 导致了我用this->addChilde(layer);

生成弹出层显示不出来,下面是大家在上图中看到的我debug跟进的那两个函数的具体代码的截图



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c++ 指针 c++11 vs bug