gpt4 book ai didi

C++多类型对象思想

转载 作者:行者123 更新时间:2023-11-28 08:06:36 24 4
gpt4 key购买 nike

我的程序需要很多 ANSI<=>UNICODE 对话,所以我有了创建多类型对象的想法,它比附加函数和大量新/删除更容易转换所有内容。伪代码:

class CWchar // char based
{
public:
public static implicit operator wchar_t*(CWchar cw)
{
// converting cw.data to wchar_t
// up to U+FFFF conversion needed
}
public static implicit operator char*(CWchar cw)
{
return cw.data;
}
CWchar& CWchar::operator=(const char* c)
{
data = *c;
return *this;
}
CWchar& CWchar::operator=(const wchar_t* c)
{
//conversion to char* ...
return *this;
}

// add some smart pointers, garbage collector, and leave delete

private:
char* data;
}

这真的值得编码吗?还是我应该考虑其他解决方案?也许已经完成了项目?或者也许我错了,这个想法不好?谢谢

最佳答案

这听起来很像 codecvt .这允许您在 Char* 和多字节 wchar_t* 流之间进行转换。这是标准库的一部分。 Stroustrup 编写的 The C++ Programming Language 第三版对此有一个很好的附录。

关于C++多类型对象思想,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10174262/

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