缩写类

时间:2016-02-08 19:37:40

标签: c++

当我使用类中定义的类型时,哪种方法可以避免编写类名?

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

MyClass::mytype foo

我只想写

mytype foo

我试过

#define MyClass::mytype mytype

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

2 个答案:

答案 0 :(得分:5)

你可以这样做:

typedef MyClass::mytype mytype;

答案 1 :(得分:4)

使用typedef或别名声明,理想情况是在最窄的范围内。

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