我有这样的表述:
template <typename A, typename B>
struct SomeLibraryClass
{
using Foo = A;
using Bar = B;
};
现在,我想使用它,但由于在概念上用法不同,因此将其重命名。
template <typename A, typename B>
using quaz = SomeLibraryClass<A, B>;
但是,如果我想获得酒吧,它仍然是
quaz::bar
。但是说我希望quaz::bar
改为quaz::foobar
。这可能吗?为什么或者为什么不?我不能使用继承。它默默地破坏了代码。
最佳答案
您不能添加或删除成员,也不能更改已定义的类的成员的名称。您所能做的就是定义一个新类。