0

我有一个 cpp 头文件,其结构如下:

typedef class MyType_t {

//...

public:
    void    method();

} MyType;

我正在尝试从这样的 .mm 文件中使用它:

MyType.method();

这会导致编译器错误“未知类型名称‘MyType’;你的意思是‘MyType_t’吗?”

编译器似乎能够理解“MyType_t”,但似乎不支持“MyType”。我只知道非常基本的 c++ 并且不知道这个构造的确切用途。我刚刚下载了这段代码,必须从objective-c调用它。

4

2 回答 2

5

都不应该工作。

你的意思是:

class MyType_t {

//...

public:
    void    method();

} MyType;

typedef声明了一个新类型,称为与MyType相同MyType_t。上面的语法声明了一个MyType类型为 的变量MyType_t

于 2012-09-11T20:56:33.597 回答
0

问题是我在使用之前没有调用构造函数MyType

所以添加这个

MyType MyType_t(parameter);

解决了。

于 2012-09-11T21:32:36.877 回答