静态成员、this指针
生活随笔
收集整理的這篇文章主要介紹了
静态成员、this指针
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
靜態數據成員
靜態數據成員要在數據成員定義前加關鍵字static,編譯器將靜態數據成員存放在靜態存儲區。對于多個對象來說,靜態數據成員只存儲一處,便可供所有的對象使用。只要對靜態數據成員的值更新一次,便可保證所有對象存取更新后的值相同,有利于提高時間效率。
靜態數據成員被定義后,必須對齊進行初始化。初始化在類體外進行,一般放在該類的實現部分,也可放在其他位置。
class counter { public:static int num; }; int counter::num = 1; //初始化 void main() {int i;for(i=0; i<5; i++){counter::num += i; //修改后的內容被保存到內存中固定的位置cout<<counter::num<<'\t';}cout<<endl; }輸出: 1 2 4 7 11靜態成員函數
靜態成員函數同樣是在成員函數前加 static 關鍵字。靜態成員函數體內,可以通過對象名或指針變量直接訪問所屬類的靜態成員,但不能訪問非靜態成員。(靜態成員函數只能訪問該類的靜態成員)
this指針
每個成員函數都隱含著一個常量指針類型的形參,即this指針。用法如下:
class A {int x,y; public:void setXY(int x, int y){ this->x = x; this->y = y;} //this指針同名參數賦值 };void main() {A a;a.setXY(10,15); //調用 }?
總結
以上是生活随笔為你收集整理的静态成员、this指针的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: WorkNC机床碰撞检测(变化角度)
- 下一篇: 报错解决:Unable to find