【发布时间】:2015-02-18 03:58:08
【问题描述】:
我希望是个简单的问题。
是否可以在任一类之外定义类转换(等号运算符)?
这源于我的库中的一个类似“api”的层。所以我可以根据底层库编译选择代码。
例子:
foo.hpp(这是我的来源)
class foo
{
}
bar.hpp(这不是我的来源)
class bar
{
}
conversions.hpp(这个文件根据链接的低层改变)
bar operator=(const foo& other)
{
}
该运算符将引发编译器错误,因为它位于静态上下文中,应在类声明中声明。这不是一个真正的选择,因为该栏类可以更改。
【问题讨论】:
标签: c++ type-conversion operator-keyword