什么是数组类型的typedef语法?

时间:2013-06-26 20:59:04

标签: c++ typedef

我有这个C ++ 11代码:

using swallow = int[];

但MSVS2013上预览了barfs:

  

错误C2143:语法错误:缺少';'在'='之前

所以我试过

typedef int[] swallow;

但那让我:

  

警告C4091:'typedef':当没有声明变量时忽略'int'的左边

所以我尝试颠倒typedef的东西,因为我永远不记得了(因此using太棒了):

typedef swallow int[];

得到了:

  

m:\ development \ source \ ambrosia \ libambrosia \ Ambrosia / utility.h ++(33):错误C2144:语法错误:'int'前面应加';'

我已经对MSVS2013感到失望了。我怎么写这个,以便MS编译器能理解这个简单的代码?

1 个答案:

答案 0 :(得分:6)

typdef是一个声明,遵循与声明相同的语法:

extern int a[];

typedef int b[];

(请注意b是一个不完整的类型,a只是声明,未定义。)