1
是否可以在C++中的基本类型之间提供自定义隐式转换?C++基本类型之间的自定义转换
具体来说,我有具有的Xerces-C库:
using XMLCh = unsigned short int;
不过,当然没有办法提供一个字符串作为unsigned short int
。所以我想一些这样的:
operator unsigned short int*(char16_t* s) { return reinterpret_cast<unsigned short int*>(s); }
operator char16_t*(unsigned short int* s) { return reinterpret_cast<char16_t*>(s); }
这则让你说:
XMLCh *str = u"Hello, world.";
和:
DOMElement* pEl = ...;
std::u16string str = pEl->getNodeName();
等。就目前而言,我将不得不将所有的Xerces调用都包含在一个转换函数中 - 丑陋!
谢谢。我知道。你能建议一种方法来实现我想要实现的目标吗? – Tom 2014-09-19 07:14:24