我在看cocos源码是 遇到的 关于map初始化的问题 ,我没见过 然后我仿照写了个 都是错的 不明白为什么? 求大神
typedef struct myFiexl
{
myFiexl(int r,int g, int b) :m_r(r),m_g(g),m_b(b){}
int m_r;
int m_g;
int m_b;
}Fiexl;
typedef map<string, Fiexl> FiexlMap;
typedef FiexlMap::value_type FiexlVal;
FiexlMap myFielmap;
FiexlVal myFielSum[] = {
FiexlVal("red",Fiexl(0,255,0)),
FiexlVal("black",Fiexl(255,255,255)),
FiexlVal("green",Fiexl(255,0,0)),
};
myFielmap(myFielSum, myFielSum+sizeof(myFielSum)/sizeof(myFielSum[0]));
先看是什么错误,一般是参数类型等不一致
是的 问题是 它得怎么不错我的就错
贴出完整的代码和错误来,你定义的这些类是否存在,typedef struct myFiexl 从哪里继承的
myFielmap(myFielSum, myFielSum+sizeof(myFielSum)/sizeof(myFielSum[0])); 把这句用insert插入,map好像不支持用迭代器的方式初始化(没试过),通过insert肯定是可以的
map(first,end)构造函数是对的
可能是你的编译平台不支持吧?c11或c99的区别