我是c ++的新手并且学习std:string但我不禁想到下面有更好的方法...
BYTE a = 0x01;
BYTE b = 0x02;
BYTE c = 0x03;
WORD d = 0xFF;
char* e = "a char!";
std::string myString;
myString.append(a, 1);
myString.append(b, 1);
myString.append(c, 1);
myString.append(d, 2);
f = strlen(e);
myString.append(e, f);
是否有更快更好的方法在visual c ++中执行上述操作?
我正在使用visual studio 2010,必须使用变量,任何帮助表示赞赏!
答案 0 :(得分:5)
您可以使用escape sequences来完成此操作。以下内容应该有效。
std::string myString("\x01\x02\x03\xffa char");
如果需要从变量初始化字符串,可以使用C ++ 11的大括号初始化语法。
char a = 0x01;
char b = 0x02;
char c = 0x03;
char d = 0xFF;
const char* e = "a char!";
std::string myString{ a, b, c, d};
myString += e;