課程
/后端開發
/C++
/C++遠征之封裝篇(上)
例如
string m_strName;string m_strGender;int m_strScore;
為什么可以放在函數后面定義
2019-02-13
源自:C++遠征之封裝篇(上) 4-2
正在回答
和C語言不同,這是面向對象語言的特點之一,需使用的變量可以在當前任意位置定義,即使定義在調用的后面也可以使用,不僅僅是這里的封裝,其他地方也可以這樣。
至于這里為什么這樣定義,這個得問開發出C++面向對象的人了,雖然我們習慣性的都先在public里進行調用,然后把定義的private部分寫下面,但這不是硬性規定的,可以更換順序。
函數返回函數外定義的變量是因為外面定義了變量即使是private也會是這個類中的全局變量,所以函數可以對這個變量進行更改,并且反饋出去,其實即使是函數內變量也可以return出去,不過就沒有一個變量儲存,而是直接返回一個值,不知道這個說法有沒有錯。。。
這個在類中定義的成員變量,生命周期應該就是在對象存在的全周期。就是一個對象實例化出來的時候,變量就已經定義好了,而調用函數都是在對象出現之后。
Peppa_ 提問者
舉報
封裝--面向對象的基石,本教程力求幫助小伙伴們即學即會
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2019-04-15
和C語言不同,這是面向對象語言的特點之一,需使用的變量可以在當前任意位置定義,即使定義在調用的后面也可以使用,不僅僅是這里的封裝,其他地方也可以這樣。
至于這里為什么這樣定義,這個得問開發出C++面向對象的人了,雖然我們習慣性的都先在public里進行調用,然后把定義的private部分寫下面,但這不是硬性規定的,可以更換順序。
函數返回函數外定義的變量是因為外面定義了變量即使是private也會是這個類中的全局變量,所以函數可以對這個變量進行更改,并且反饋出去,其實即使是函數內變量也可以return出去,不過就沒有一個變量儲存,而是直接返回一個值,不知道這個說法有沒有錯。。。
2019-02-14
這個在類中定義的成員變量,生命周期應該就是在對象存在的全周期。就是一個對象實例化出來的時候,變量就已經定義好了,而調用函數都是在對象出現之后。