學習好幸苦。
當我們宣告乙個類的成員為靜態時,無論建立多少個類的物件,靜態成員是共享的。
我們可以在類的外部對靜態成員進行初始化,首先講解靜態資料的定義方式:
class
box;
則初始化方式如下:
// 初始化類 box 的靜態成員
int box::count =
0;
而類的靜態函式的定義方式如下:
如果把函式成員被宣告為靜態的,靜態函式可以在類物件不存在的情況下被呼叫,只要使用類名加範圍解析運算子 :: 就可以訪問靜態函式。
靜態成員函式只能訪問靜態成員資料、其他靜態成員函式和類外部的其他函式。
該例子講述count資料在兩個類物件中的共享。
#include
using
namespace std;
class
boxvoid
countplus()
private
:double length;
// 長度
double breadth;
// 寬度
double height;
// 高度};
// 初始化靜態變數
int box::count =0;
intmain
(void
)
應用結果為:
constructor called.
constructor called.
count =
2請按任意鍵繼續.
..
該例子講述類的靜態函式訪問類的靜態資料的例子。
#include
using
namespace std;
class
boxvoid
countplus()
static
void
getcount()
private
:double length;
// 長度
double breadth;
// 寬度
double height;
// 高度};
// 初始化靜態變數
int box::count =0;
intmain
(void
)
應用結果為:
count =
0count =
2請按任意鍵繼續.
..
C 類的靜態成員
1.為什麼要有靜態成員 當某個成員需要屬於類本身,而不輸入某個特定物件時,這樣的成員需要定義為靜態 static 型別。例如 銀行賬戶類有乙個表示基準利率的成員。該成員不隨物件的不同而改變。另外,如果該利率成員的值改變,所有的物件應該都能使用該新值。它屬於該類本身的成員,因此需要定義為static型...
C 類的靜態成員
類的靜態成員由整個類所共享,而不屬於任何乙個物件。在成員的宣告之前加上static來將它宣告為靜態成員。類的靜態成員可以是常量 引用 指標 類型別,也可以是public或private class a static void rate double 宣告乙個靜態成員函式 private static...
C 類的靜態成員
靜態資料成員 1 靜態資料成員的值對每個物件都是一樣的,若某個物件對靜態資料成員做了修改,則其他物件的靜態資料成員也同時被修改。2 靜態資料成員在使用前,還必須在檔案作用域做定義性說明,以分配儲存空間和初始化。靜態資料成員定義性說明的格式為 資料型別 類名 靜態資料成員名 值 3 訪問類的靜態資料成...