我正在尝试用printf和我的代码打印std :: string。但它不会打印我指定的字符串。
标头文件
#include "cocos2d.h"
#include <iostream>
class Cards : public cocos2d::CCLayer{
public:
virtual bool init();
virtual void load();
std::string TotalCards[52];
}
#include "Cards.h"
bool Cards::init(){
if ( !CCLayer::init() ) {
return false;
}
TotalCards[0] = "ClubsA";
TotalCards[1] = "HeartsB";
TotalCards[2] = "Diamonds4";
return true;
}
void Cards::load(){
printf("Hey I am HERE\n");
for (int i=0 ; i<3; i++) {
printf("CARD NAME %s\n", TotalCards[i].c_str());
}
只打印
CARD NAME
CARD NAME
CARD NAME
答案 0 :(得分:1)
在调用Cards::init()
之前,请确保Cards::load
被称为并返回true 。 Cards::load
访问的数组将包含三个空字符串,以防Cards::init()
未调用,或者返回false。