缩写类中定义的类型的全名

Abbreviate the full name of a type defined in a class

本文关键字:类型 全名 定义 缩写      更新时间:2023-10-16

当我使用类中定义的类型时,避免写类名的最佳方法是什么?

例如,我有一个类MyClass其中定义了一个mytype类型,在这个类中我需要使用mytype,我必须编写:

MyClass::mytype foo

我只想写

mytype foo

我试过

#define MyClass::mytype mytype

它有效,但我认为这不是一个好的解决方案。我应该使用什么?

你可以做:

typedef MyClass::mytype mytype;

使用 typedef 或别名声明,最好在尽可能窄的范围内。

void some_function() {
    typedef MyClass::mytype mytype;
    // or: using mytype = MyClass::mytype;
}
// namespace not polluted