1.物件陣列
陣列是有一定順序關係的,同型別的資料集合。
物件是屬於自定義類的例項。
我們可以由乙個個物件構成陣列,只要這些物件屬於同乙個型別就可以。這就是物件陣列。
定義物件陣列:類名 陣列名[元素個數];
訪問物件陣列元素:通過下標訪問:陣列名[下標].成員名
2.物件陣列初始化
陣列中每乙個元素物件被建立時,系統都會呼叫類建構函式初始化該物件。
通過初始化列表賦值。例如:point a[2]=;
如果沒有為陣列元素指定顯式初始值,陣列元素便使用預設值初始化(呼叫預設建構函式)。
陣列元素的構造和析構:
構造陣列時,元素所屬的類未宣告建構函式,則採用預設建構函式。
各元素物件的初值要求為相同的值時,可以宣告具有預設形參值的建構函式。
各元素物件的初值要求為不同的值時,需要宣告帶形參的建構函式。
當陣列中每乙個物件被刪除時,系統都要呼叫一次析構函式。
3.物件陣列應用舉例:
#ifndef point_h
#define point_h
class
point
intgety()
const
static
void
showcount()
;//靜態函式成員
private
://私有資料成員
int x,y;};
#endif
//_point_h
#include
#include
"point.h"
using
namespace std;
point::
point()
:x(0
),y(
0)point::
point
(int x,
int y):x
(x),
y(y)
point::
~point()
void point::
move
(int newx,
int newy)
#include
#include
"point.h"
using
namespace std;
intmain()
4.基於範圍的for迴圈
c++11提供了一種新的迴圈語句,基於範圍的for迴圈。他最擅長的就是自動遍歷整個容器,比如陣列就是乙個容器,基於範圍的for迴圈就可以不用我們控制迴圈次數,能自動把整個陣列力的元素遍歷一遍。例子:
#include
//using namespace std;
intmain()
;for
(int
& e:array)
return0;
}
可以對比不使用基於範圍的for迴圈:
#include
using
namespace std;
intmain()
;int
*p;for
(p=array;psizeof
(array)
/sizeof
(int);
++p)
return0;
}
基於範圍的for迴圈在處理容器類的時候更有用。 學習筆記 雜湊學習筆記
hash基本原理 hash就是乙個像函式一樣的東西,你放進去乙個值,它給你輸出來乙個值。輸出的值就是hash值。一般hash值會比原來的值更好儲存 更小 或比較。那字串hash就非常好理解了。就是把字串轉換成乙個整數的函式。而且要盡量做到使字串對應唯一的hash值。它的主要思路是選取恰當的進製,可以...
學習筆記 CentOS 學習筆記01
簡單的做個課堂筆記 虛擬機器用的是vmware,系統是centos cd etc sysconfig network scripts pwdls 顯示列表 cat ifcfg eth0 檢視檔案內容 vi ifcfg eth0 進入vi編輯器 onboot no 原始設定 x逐字刪除 d刪除整行 a...
筆記 spring cloud 學習筆記
1 spring cloud 是什麼 spring cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具 例如配置管理,服務發現,斷路器,智慧型路由,微 控制匯流排 分布式系統的協調導致了樣板模式,使用spring cloud開發人員可以快速地支援實現這些模式的服務和應用程式。他們將在任...