簡體   English   中英

在成員函數中初始化成員變量

[英]Initializing member variables in member functions

所以我現在正在實現一個c ++程序,但事實是我不知道下面的上下文是否可行。

class Foo{
     private:
          int a;
       public:
          Foo(int _a) : a(_a){

           }   

          void func(int _a) : a(_a){
              //implementation shows here
         }   
 }; 

如您在這里看到的,有一些成員函數以類似於構造函數的方式初始化成員變量。 可能嗎?

不,這不可能而且意義不大:成員初始化僅在construction上執行。

func ,您將成員變量設置為其他變量, 賦值可以很好地完成此工作。

不能。初始化列表只能與構造函數一起使用。

func必須看起來像這樣。

      void func(int _a) {
         a = _a; 
          //implementation shows here
     } 

顯然func不能初始化引用,並且在func可以運行之前將調用Foo構造func ...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM