「Cocos2dx/property」の版間の差分
提供: 初心者エンジニアの簡易メモ
(ページの作成:「==サンプルコード== cpp側にのみ記述、h側には記述不要。 #include "HelloWorldScene.h" USING_NS_CC; const char* mStr = "hoge_property"; // 通常prop...」) |
(→サンプルコード) |
||
| 行3: | 行3: | ||
#include "HelloWorldScene.h" | #include "HelloWorldScene.h" | ||
USING_NS_CC; | USING_NS_CC; | ||
| − | const char* | + | const char* mName = "hoge_property"; // 通常property |
| − | static const char* | + | static const char* mNameStatic = "hoge_property_static"; // static_property |
Scene* HelloWorld::createScene() | Scene* HelloWorld::createScene() | ||
{ | { | ||
| 行14: | 行14: | ||
bool HelloWorld::init() | bool HelloWorld::init() | ||
{ | { | ||
| − | + | mName = "hoge_property2"; | |
| − | log("%s", | + | log("%s", mName); |
| − | + | mNameStatic = "hoge_property_static2"; | |
| − | log("%s", | + | log("%s", mNameStatic); |
| + | // 略 | ||
| + | } | ||
| + | |||
| + | ==セッターゲッターでpropertyにアクセス== | ||
| + | propertyはpublicにできない? | ||
| + | -SampleModule.h | ||
| + | #ifndef Helloworld_SampleModule_h | ||
| + | #define Helloworld_SampleModule_h | ||
| + | class SampleModule | ||
| + | { | ||
| + | public: | ||
| + | static void setName(const char*); | ||
| + | static const char* getName(); | ||
| + | }; | ||
| + | #endif | ||
| + | |||
| + | -SampleModule.cpp | ||
| + | #include "SampleModule.h" | ||
| + | USING_NS_CC; | ||
| + | static const char* mNameStatic = "hoge_property_static"; | ||
| + | void SampleModule::setName(const char* name) | ||
| + | { | ||
| + | mNameStatic = name; | ||
| + | } | ||
| + | const char* SampleModule::getName() | ||
| + | { | ||
| + | return mNameStatic; | ||
| + | } | ||
| + | |||
| + | -HelloWorldScene.cpp | ||
| + | bool HelloWorld::init() | ||
| + | { | ||
| + | NativeLauncher::setName("hoge_setget"); | ||
| + | log("%s", NativeLauncher::getName()); // hoge_setget | ||
// 略 | // 略 | ||
} | } | ||
2017年3月2日 (木) 18:11時点における版
サンプルコード
cpp側にのみ記述、h側には記述不要。
#include "HelloWorldScene.h"
USING_NS_CC;
const char* mName = "hoge_property"; // 通常property
static const char* mNameStatic = "hoge_property_static"; // static_property
Scene* HelloWorld::createScene()
{
auto scene = Scene::create();
auto layer = HelloWorld::create();
scene->addChild(layer);
return scene;
}
bool HelloWorld::init()
{
mName = "hoge_property2";
log("%s", mName);
mNameStatic = "hoge_property_static2";
log("%s", mNameStatic);
// 略
}
セッターゲッターでpropertyにアクセス
propertyはpublicにできない? -SampleModule.h
- ifndef Helloworld_SampleModule_h
- define Helloworld_SampleModule_h
class SampleModule
{
public:
static void setName(const char*);
static const char* getName();
};
- endif
-SampleModule.cpp
#include "SampleModule.h"
USING_NS_CC;
static const char* mNameStatic = "hoge_property_static";
void SampleModule::setName(const char* name)
{
mNameStatic = name;
}
const char* SampleModule::getName()
{
return mNameStatic;
}
-HelloWorldScene.cpp
bool HelloWorld::init()
{
NativeLauncher::setName("hoge_setget");
log("%s", NativeLauncher::getName()); // hoge_setget
// 略
}
