错误C2143:语法错误:缺少';'在'。'之前 错误C4430:缺少类型说明符 - 假定为int。注意:C不支持default-int错误C2371:'TranslationMap':重定义;不同的基本类型
static UString FindTranslatedString(UString propertyName);
static std::map<UString,UString> TranslationMap ;
static UString engString("TextAlignmentPosition");
static UString transString(MSGTXT("TextAlignmentPosition"));
TranslationMap.insert(std::pair<UString,UString>(transString,engString));
UString FindTranslatedString(UString propertyName)
{
UString NotFound("CannotFind");
std::map<UString, UString>::iterator itr;
itr = TranslationMap.find(propertyName);
if(itr!= TranslationMap.end())
{
return itr->second;
}
else
{
return NotFound;
}
}
答案 0 :(得分:0)
1)您使用的是c编译器(gcc)还是c ++编译器(g ++)?
2)如果这是你的整个代码,将TranslationMap.insert()
全局放入是错误的,你应该把它放到一个函数中,例如: main()的
3)MSGTXT
的定义是什么?