gpt4 book ai didi

c++ - 字符串隐式转换运算符到 const char*/wchar_t *

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:45:32 24 4
gpt4 key购买 nike

我发现 MFC/ATL CString 类在 Win32 C++ 代码中非常方便;特别是我发现我们可以将 CString 的实例直接传递给 Win32 API 的 LPCWSTR(即 const wchar_t *)参数很方便,感谢CString 定义的隐式转换运算符。

相反,当使用 std::wstring 时,需要显式调用 .c_str() 方法。

那么,为什么 STL 字符串类(std::stringstd::wstring)需要显式方法调用(c_str()) 而不是定义一个隐式的 const char*/const wchar_t * 转换运算符?

隐式转换运算符是否隐藏着严重的陷阱?

最佳答案

无论理论上的问题是什么,我只会指出,在使用 CString 的多年中,我从未被此功能所困扰。便利远大于危险。

关于c++ - 字符串隐式转换运算符到 const char*/wchar_t *,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8913796/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com