作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
要将 my_int
声明为 int
的类型别名,我们可以这样写:
typedef int my_int; // (1)
奇怪的是,以下内容似乎也定义了 int
别名:
int typedef my_int; // (2)
我以前从未见过这样的语法。为什么它有效?
最佳答案
读完我的推理C++ reference是这样的:(1) 和 (2) 是以下形式的声明
specifiers-and-qualifiers declarators-and-initializers;
其中说明符和限定符
为typedef int
或int typedef
。
说明符和限定符的顺序并不重要,(1) 和 (2) 都是类型别名的有效声明。例如,要为 const int
定义别名,原则上我们可以使用以下 6 种组合中的任何一种:
typedef int const my_cint;
typedef const int my_cint;
int typedef const my_cint;
const typedef int my_cint;
int const typedef my_cint;
const int typedef my_cint;
关于c++ - Typedef 声明的形式为 `int typedef my_int;`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58781929/
这个问题在这里已经有了答案: 关闭 10 年前。 Possible Duplicate: “static const” vs “#define” in c 当我这样做时: #define WEEKD
要将 my_int 声明为 int 的类型别名,我们可以这样写: typedef int my_int; // (1) 奇怪的是,以下内容似乎也定义了 int 别名: int typedef my
我是一名优秀的程序员,十分优秀!