cocos2dx3.2 xcode代碼塊啊,氣死自己的類名,低級的錯誤何時了?


哎,以爲自己學會了在xcode上如何自己自定義代碼塊,沒曾想到自己竟然犯下如此低級的錯誤,是我的眼睛瞎了,還是。。。。

(如果大家不知道如何在xcode上創建自定義代碼塊的話可以參照我的上一篇文章:http://blog.csdn.net/aiwobiezoukaicnew/article/details/42320927)

好吧,原因是這樣的,xcode自定義代碼塊很方便,我心裏想啊,如果每次新建累的時候,也用這一招,這樣就可以減少一些重複性的

工作,是不是很方便呢,於是,編輯代碼塊,頭文件的

title爲:headmy,裏面的內容如下:

#include "cocos2d.h"

class Player :public cocos2d::Node

{

public:

   

    CREATE_FUNC(Player);

   virtualbool init();

private:

    Player();

   virtual ~Player();

    

};

實現文件的title爲:implementmy, 裏面的內容爲:

Player::Player()

{

}

Player::~Player()

{

}


bool init()

{

    return true;

    

}

就這樣,然後我新建一個類,

PictureMy,在它的h中,直接敲headmy,然後用PictureMy替換裏面內容所用的Player,OK,於是就變成了下面的內容,自我感覺良好

,嗯,Perfect.


#include "cocos2d.h"

class PictureMy :public cocos2d::Node

{

public:

    

    CREATE_FUNC(PictureMy);

   virtualbool init();

private:

    PictureMy();

   virtual ~PictureMy();

    

};

在實現文件也用同樣的方法,變成下面的內容:

#include "PictureMy.h"

PictureMy::PictureMy()

{

}

PictureMy::~PictureMy()

{

}


bool init()

{

    return true;    

}

感覺應該沒問題了吧,commad + B編譯下:沒想到出現了以下的情況,如下圖:

這是什麼情況呢,貌似跟虛函數有關,但我看了下,我實現了啊,實在找不出問題的所在,好吧百度下吧,如下圖:



嗯,百度也是這樣說的,我又檢查了一遍,還是沒發現錯誤,心裏嘀咕:該實現的我都實現啦,呢嗎的狗屁xcode,好吧既然這樣,我把整個實現類全部註釋掉,看你又做出如何反應,接着在頭文件全部加{},表示已經實現,Command + B , 這下編譯成功了,到這裏我就堅信出現的錯誤肯定在實現文件裏面,仔仔細細,認認真真的又檢查了一遍,好了原來是這裏,該死的, damn it, 

bool init()

{

    return true;    

}

intit 函數沒加類限制啊,正確應該是下面的:

bool PictureMy::init()

{

    return true;    

}


COMMAND + R,編譯運行ok如下圖:



這麼低級的錯誤,我希望我以後不要再犯了,也提醒大家千萬要小心,不要被這種低級毫無趣味的錯誤折騰。

到此結束。















發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章