如何将wchar_t字符串分配给用户定义类的 CString 成员
How to assign wchar_t string to CString member of user defined class?
这是我使用的代码如下:
class A
{
public:
CString abc;
void fun1();
};
void A::fun1()
{
wchar_t *Str = L"Stack Overflow";
CString xyz = Str; // This works fine.
abc = Str; // Whether this assignment is correct?
}
int main()
{
A obj;
obj.fun1();
return 0;
}
调试时,我发现当断点穿过初始化代码时 abc = Str
,我在变量窗口中看到abc
中的字符串没有更新"Stack Overflow"
。
在这里,xyz 字符串在我查看调试器窗口时更新为"堆栈溢出"。
我不熟悉CString(主要是在unix/linux环境中开发(,但提到这一点,我会使用CStringW来存储wchar_t字符串。
但我认为你对CString的初始化是错误的。根据MSDN文档,我宁愿做这样的事情:
CStringW abc = _T(L"Stack Overflow");
否则,我建议使用 cstdlib 中的 wcstombs 将 wchar_t* 转换为字符 * 并坚持标准。
请参阅 wcstombs 文档。
相关文章:
- 创建一个函数以在输入为负数或零时输出字符串.第一次执行用户定义的函数
- 使用用户定义函数的字符串反转
- 用户定义函数中的指针和输入
- C++ - 将结构类型的数组传递给用户定义的函数
- 如何将wchar_t字符串分配给用户定义类的 CString 成员
- 将值分配给原子用户定义的结构
- 制作简单的CLI C 程序所需的知识,该程序为歌曲找到歌词并将其显示给用户
- 是否应将整数值传递给浮点用户定义的文本
- 无法将指针定义为用户定义的类,但我可以直接实例化
- 可以将STD :: StreamBuf的自定义实现中的异常交付给流用户
- 将犰狳函数传递给用户定义的函数
- CUDA 将用户定义的结构传递给内核失败
- C++:如何将普通话(字符串)分配给用户使用数组输入的数字 &运算符问题
- 在函数中分配内存以返回给用户
- Static_cast拒绝强制转换指向类的指针,即使定义了用户定义的转换运算符也是如此
- C++将用户定义的函数传递给另一个函数
- classList数组不会输出给用户
- 如何分配枚举值给用户定义的双变量??c++
- 检查是否已经定义了用户定义的文字
- 是否可以检查是否为给定类型和参数定义了用户字面值