C++中的类型转换

从C++转到Python,现在再写C++很多语法已经觉得太过繁杂了。比如说类型转换,Python里大部分情况直接套个类型函数就搞定了,C++里复杂很多,尤其是又支持C的类型,使得问题进一步复杂。

  • 字符串类型之间相互转换(const char*std::stringTString
// `const char*` to `std::string`
const char* cstr = "A c-string!";
std::string stlstr(cstr);
// `std::string` to `const char*`
std::string stlstr("An STL string!");
const char* cstr = stlstr.c_str();
const char* cstr2 = stlstr.data();
// `const char*` to CERN ROOT `TString`
const char* cstr = "A c-string!";
TString tstr(cstr);
// CERN ROOT `TString` to `const char*`
TString tstr = "A TString!";
const char* cstr = tstr.Data();
// CERN ROOT `TString` to `std::string`
TString tstr = "A TString!";
std::string stlstr(tstr);
// `std::string` to CERN ROOT `TString` (实际上不是直接转化,而是由以上推导出的)
std::string stlstr("An STL string!");
TString tstr(stlstr.data());  // or `tstr(stlstr.c_str())`
  • 字符串与整型之间相互转换(stringchar*int
// `int` to `std::string`
int id = 520;
std::string stlstr = std::to_string(id) ;
// `std::string` to `int`
std::string stlstr = "12345";
int id = std::stoi(stlstr);
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容