typedef struct和struct的区别:typedef struct创建结构体类型的别名,而struct定义新的结构体类型。typedef struct创建的别名在声明之后即可使用,而struct定义的结构体在定义之后才可使用。typedef struct和struct都不会创建额外的存储空间。
typedef struct和struct的区别
在C++中,typedef struct
和struct
的区别在于:
-
别名与定义:
-
typedef struct
为现有struct
类型创建别名,它仅定义一个新的类型名称,不会创建新的结构体。 -
struct
用于定义一个新的结构体类型,它创建一个新的数据结构。
-
-
使用方式:
-
typedef struct
创建的别名可以用作类型名称,就像普通类型一样。 -
struct
定义的结构体可以使用结构体名称来引用。
-
-
可访问性:
-
typedef struct
创建的别名在整个源文件中都可访问,即使在别名声明之后。 -
struct
定义的结构体只有在结构体定义之后才可访问。
-
-
存储空间:
-
typedef struct
和struct
都不会创建额外的存储空间,它们只是方便地引用或创建结构体。
-
示例:
<code class="cpp">// 定义一个结构体 struct Point { int x; int y; }; // 为结构体创建别名 typedef struct Point PointAlias;</code>
登录后复制
在上面的示例中,PointAlias
是Point
结构体的别名,可以通过以下方式使用:
<code class="cpp">PointAlias point; // 声明一个PointAlias类型的变量 point.x = 10; // 访问变量的成员</code>
登录后复制
总结:
-
typedef struct
创建结构体类型的别名,而struct
定义新的结构体类型。 -
typedef struct
创建的别名在声明之后即可使用,而struct
定义的结构体在定义之后才可使用。 -
typedef struct
和struct
都不会创建额外的存储空间。
以上就是c++++中typedef struct和struct的区别的详细内容,更多请关注叮当号网其它相关文章!
文章来自互联网,只做分享使用。发布者:叮当,转转请注明出处:https://www.dingdanghao.com/article/431157.html