c++中string转cstring
时间:2026-10-29 16:32:04来源:在C++中,`std::string`和`CString`(来自MFC)是两种不同的字符串类型。将`std::string`转换为`CString`有多种方法,以下是常见方式的总结:
| 方法 | 说明 | 适用场景 |
| `CString str = string.c_str();` | 直接使用`c_str()`获取C风格字符串 | 简单快速,适用于临时转换 |
| `CString str(string.begin(), string.end());` | 使用构造函数传入迭代器 | 适合需要精确控制字符的场景 |
| `strcpy_s(str.GetBuffer(), string.size() + 1, string.c_str());` | 使用`GetBuffer`进行手动复制 | 需要避免内存问题时使用 |
注意:`CString`属于MFC库,若未使用MFC项目,建议直接使用`std::string`或`char`处理。
展开更多
标签:
