static member代表他只與class相關,而不與物件相關 (故無法用this指static member)
static member有static function & static function兩種
static function 只能呼叫static variable & static function, 不可呼叫物件層級的function 和 variable。但物件層級的 function 則可同時呼叫static與非static member
請參考以下範例:
#include <stdio.h> class cTest { public: static int Num; static void Func() { //static function 只能呼叫static variable & static function, 不可呼叫物件相關的function 和 variable member printf("%d", Num); } }; int cTest::Num = 9; // static variable的初始值必須寫在global area. int main() { cTest::Num = 10; cTest::Func(); return 0; }
沒有留言:
張貼留言