C++使用typedef定义结构体别名的方法

typedef定义结构体别名

C++中,typedef关键字可以用于C++中的类型定义一个别名,也包括可以为自定义的结构体struct定义一个“别名”,通过这种方法可以简化C++代码,可以直接使用其别名来定义实例对象,而不需要再通过struct和tag,语法如下:

typedef struct{
   member1;
   member2;
   ...
   memberN;
}otherName
或:
struct tag{
   member1;
   member2;
   ...
   memberN;
}typedef otherName

// 或在结构体定义完成之后,使用typedef为结构体定义别名,比如:
typedef struct structTag otherName;

typedef定义结构体别名实例代码

如下实例代码,通过typedef定义了一个“匿名”——没有tag的结构体的别名为Flower,并通过该别名直接定义一个结构体的实例对象,并访问其成员:

#include <iostream>
using namespace std;


typedef struct
{
    string flower_name;
}Flower;


int main() {
    // 定义该结构体的实例对象不再需要使用struct,直接使用别名
    Flower rose = {"玫瑰"};
    // 访问实例
    cout << rose.flower_name << endl;
    return 0;
} 

编译运行之后,得到输出:玫瑰。

免责声明:内容仅供参考,不保证正确性!


全栈后端 / C++教程 :
















Copyright © 2022-2024 笨鸟工具 x1y1z1.com All Rights Reserved.