我们是否应该能够继承Qt容器QList,QVector或者QMap为了专门化它们并添加功能?如果是这样,我们需要做什么才能确保容器正常工作(虚方法,虚析构函数等等?).如果没有,为什么不,我有什么其他选择?
如果Foo定义了以下类.据说它重载了一元的ampersand(&)运算符:
class Foo {
public:
Foo* operator&() { return nullptr; }
};
Run Code Online (Sandbox Code Playgroud)
我认为在这种情况下,(无论你是否可以通过std::addressof()其他惯用技巧获取此类对象的地址这一事实),无法访问/选择原始的一元&符运算符,该运算符返回被调用对象的地址我错了吗?
但是,通过重载,我知道有一组函数,在编译时根据某些标准选择一个函数.但这种想法似乎与上述情况不符.
为什么它被称为重载而不是重新定义或替换的其他东西?