2011-07-23 43 views
4

我有我正在使用它定义一个结构称为在类方法内部访问类的命名空间的外部?

typedef struct { ... } Mii; 

现在,在我自己的计划,我正在写一个使用这个结构私下和内部为自己的包装类头资源操作,所以我把我的类放到我的程序的命名空间中以避免冲突。

namespace CMii { 
    class Mii { 
     ... 
     void doSomething(); 
    }; 
} 

现在,我可以通过CMii :: Mii来引用我的包装类。现在,执行doSomething:

void CMii::Mii::doSomething() { 
    Mii m; 
    ... 
} 

编译器认为我指的是CMii :: Mii。我如何告诉编译器我想使用这个结构体?

回答

9

你可以做到以下几点:

::Mii m 
+0

谢谢!没有意识到你可以用这种方式引用顶级命名空间。 – cemulate