c++類的各個物件之間如果需要同乙個相同的資料時候就可以用static變數來共享資料,用static函式來對static變數進行修改。列如,乙個班的學生的資料中班主任就是共享的,那麼就可以用static來進行儲存和修改。。。。。。。
eg.超市經銷大公尺,成袋購入,成袋售出。每袋大公尺的質量有2.5公斤的、有5公斤、有10公斤的等,超市記錄所有大公尺的總質量。
構造rice類,包含重量,產地,以及重質量等,其中總質量應該屬於所有物件共同的,而且每當構造乙個物件或者析構乙個物件時,總重量都應該發生變化。**如下
#include
#include
using
namespace std;
class
rice
string getplace()
const
rice
(const rice&);
//拷貝建構函式
~rice()
;//析構函式
static
double
gettotal()
;//靜態函式是返回總重量 };
double rice::totalweight=0;
//初始化總重量
rice::
rice
(double weight,string place)
rice::
rice
(const rice& p)
rice::
~rice()
double rice::
gettotal()
intmain()
#1處函式後用const是表明這個函式不會對物件做任何修改,在傳參時如果用const引用就不會報錯 資料共享與保護
作用域 是識別符號的有效範圍 可見性 識別符號是否可以引用的問題 程式執行到某一點。能夠引用到的識別符號,就是該處可見的識別符號。函式原型的作用域 函式原型中的引數,其作用域始於 結束於 例如,設有下列原型宣告 double area double radius radius 的作用域僅在於此,不能...
資料的共享與保護
1.生存期 1 靜態生存期 定義 若物件的生存期與程式的執行期相同,則稱它具有靜態生存期 方式 使用關鍵字static 在命名空間作用域宣告的物件都具有靜態生存期 2 動態生存期 區域性生存期物件誕生於宣告點,結束於宣告所在的塊執行完畢之時。例 變數的生存期與可見性 include using na...
C 學習之資料的共享與保護
作用域是乙個識別符號在程式正文中有效的區域。作用域分類 1 函式原型作用域 2 區域性作用域 塊作用域 3 類作用域。4 檔案作用域。5 命名空間作用域 後面會學習 函式原型中的引數,其作用域始於 結束於 例如 double area double radius 函式的形參 在塊中宣告的識別符號。其...