c++共同体和枚举 - 草稿

2022-11-26  本文已影响0人  arkliu

共同体

共同体能够存储不同的数据类型, 但是在同一时间只能存储其中一种类型。

#include <iostream>
using namespace std;

union data {
    int a;
    double b;
    char c[21];
};

int main() {
    union data d;
    cout << "sizeof(data) = "<<sizeof(d)<<endl;

    cout << "d.a的地址 = "<<(void *)&d.a<<endl;
    cout << "d.b的地址 = "<<(void *)&d.b<<endl;
    cout << "d.c的地址 = "<<(void *)&d.c<<endl;
    return 0;   
}
image.png

枚举

int main() {
    enum colors{red=0, green=1 ,blue=2, other=3};
    cout << "red:"<<red<<"  green:"<<green<<"  blue:"<<blue<<"  other:"<<other <<endl;
    colors col = other;
// colors col2 = colors(3); 将整数强制转换成枚举量
    switch (col)
    {
        case red: cout << "红色" <<endl; break;
        case green: cout << "红色" <<endl; break;
        case blue: cout << "红色" <<endl; break;
        default: cout << "未知" <<endl;
    }
    return 0;   
}
image.png
上一篇 下一篇

猜你喜欢

热点阅读