c++結(jié)構(gòu)體初始化的方法是什么

c++
小億
145
2024-01-18 13:13:07
欄目: 編程語言

C++結(jié)構(gòu)體的初始化方法有以下幾種:

  1. 利用默認(rèn)的成員初始化:可以在定義結(jié)構(gòu)體的同時(shí)給成員變量賦初值。例如:
struct MyStruct {
    int value1 = 10;
    float value2 = 3.14f;
};

MyStruct obj; // 成員變量value1的值為10,value2的值為3.14
  1. 利用成員初始化列表:可以在定義結(jié)構(gòu)體對(duì)象時(shí),通過成員初始化列表為結(jié)構(gòu)體的成員變量賦值。例如:
struct MyStruct {
    int value1;
    float value2;
    MyStruct(int v1, float v2) : value1(v1), value2(v2) {}
};

MyStruct obj(10, 3.14f); // 成員變量value1的值為10,value2的值為3.14
  1. 使用賦值操作符:可以在定義結(jié)構(gòu)體對(duì)象后,通過賦值操作符為結(jié)構(gòu)體的成員變量賦值。例如:
struct MyStruct {
    int value1;
    float value2;
};

MyStruct obj;
obj.value1 = 10;
obj.value2 = 3.14f; // 成員變量value1的值為10,value2的值為3.14

需要注意的是,結(jié)構(gòu)體的默認(rèn)構(gòu)造函數(shù)(沒有參數(shù)的構(gòu)造函數(shù))只有在沒有定義其他構(gòu)造函數(shù)時(shí)才會(huì)自動(dòng)生成,如果定義了有參數(shù)的構(gòu)造函數(shù),則需要自己實(shí)現(xiàn)默認(rèn)構(gòu)造函數(shù)。

0