C++11新特性(一)auto for( : )语句简单使用

cocos2dx3.2里面用到许多c++11的新特性:

参考网站:http://www.codeproject.com/Articles/570638/Ten-Cplusplus11-Features-Every-Cplusplus-Developer


学习下, 话不多说,代码献上:


#include <string>

#include <iostream>

#include <vector>

using namespace std;

#define CC_CONSTRUCTOR_ACCESS  protected


class Sprite

{

public:    

   static Sprite* createWithPath(conststring &path); // create a sprite with path    

    void showSpritePath();// print the path of a sprite    

CC_CONSTRUCTOR_ACCESS:

    Sprite():m_strPath(""){}

   bool initWithPath(conststring &path);

private:

   string m_strPath;    

};


 Sprite*Sprite::createWithPath(conststring &path)

{    

   auto sprite = new Sprite();

   if (sprite && sprite->initWithPath(path)) {

       return sprite;

    }

   else

    {

        return  nullptr;

    }

}



voidSprite::showSpritePath()

{

   cout << m_strPath <<endl;

}


boolSprite::initWithPath(conststring &path)

{

    

   m_strPath = path;

    return true;

}

int main()

{

   int students[]{1,2, 4, 5, 4,6};

   for (auto s  : students)

    {        

       cout << s  << endl;

    }

    

   vector<Sprite*> vcSprites;

   auto s =  Sprite::createWithPath("fish.png");

    vcSprites.push_back(s);

   auto s2 =  Sprite::createWithPath("cat.png");

    vcSprites.push_back(s2);

    

   for (auto s : vcSprites) {

        s->showSpritePath();

    }


   for (auto s : vcSprites) {

       delete s;

        

    }

    vcSprites.clear();   

return 0;

}


好了就这样,很简单。顺便问下,最近学习xcode工具,编写c++,有点不方便不如vs,xcode对于c++的自动完成功能不太给力,

有木有xcode支持c++编写的插件,求介绍几款。谢谢

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