例如,假设我们有以下类,
template<typename T1, typename T2, and several others>
class Awesome_class<something non-trivial from T1, T2, ...>
: public Base_class<also something non-trivial from T1, ...> {
...class content...
}
我们需要使用当前类的类型及其基类 班级的身体。经过一段时间的搜索和测试,我发现它似乎 它可以做的最好方法是在类中为它们设置别名 定义,类似
using Current_class = Awesome_class<Repetition of the complicated things>;
using The_base_class = Base_class<Repetitions of the complicated things>;
这比所有地方的拼写更清晰,但我仍然是 想知道在现代 C ++中是否有更简洁的方法来做到这一点。 具体地,
是否有类似decltype
或auto
的神奇用法
扩展到类体中的当前类,包括方法体,
原型和类成员声明?
是否有一个为Base_class<...>
设置类型别名的好地方
这个别名既可以用于继承,也可以用于体内
类
有时,感觉重复这些类型甚至只是两次似乎是一个 真正的维护负担。任何建议都非常感谢。