读书人

通过typedef定义的类,怎么向前声明?

发布时间: 2012-03-23 12:06:21 作者: rapoo

通过typedef定义的类,如何向前声明??

#include <vector>

// 为了让行 1 通过编译,需要在这里向前声明一下 data_array
// 如何向前声明 data_array??

//class data_array; // ??????????????????

struct data
{
// ......
// ......
data_array* p_next_group; // 1
};

typedef std::vector <data> data_array;

[解决办法]
struct data;
typedef std::vector <data> data_array;

struct data
{
...
data_array* p_next_group;
};
[解决办法]
那就不要前置类型声明呗。
tyedef的东西是不可以前置类型声明的,因为它不是类型,是类型的别名。

读书人网 >C++

热点推荐