#include
// myarray 現在的陣列很難用 不可變長的陣列
// new delete 更改長度時,需要new copy delete三個步驟的操作
// malloc free relloc 只需要一步就可以了
// new 和 delete是一對,malloc和free是一對,不能混用
class myarray
myarray(const
std::size_t len = 10)
myarray(const
std::size_t len, const
int num)
int getdata(const
std::size_t index) const
// const方法就能被const修飾的物件所呼叫,但是const物件只能呼叫const方法
return
0; }
void setdata(const
std::size_t index, const
int num)
}// 獲取陣列的有效長度
std::size_t getlength()
void adddata(const
int num)
_data[_index++] = num;
}void adddata(const myarray &data)
}// 直接加乙個陣列
void adddata(const
int *data, const
std::size_t len)
// // 這裡需要丟擲乙個異常
// // 如果不使用異常體系,那麼就需要最原始的get和set函式了
//}private:
// 把資料作為私有的,這樣會更安全
// 私有變數在外部是無法使用的,但是在類的內部還是可以使用的
int *_data;
std::size_t _len; // 已經分配的空間
std::size_t _index; // 已經使用的空間
};int main()
C 第三課 類
1.this關鍵字 指向當前的類例項化的物件 1 用來使用被區域性變數名覆蓋的同名的例項成員 2 將當前物件作為乙個引數傳遞給另外乙個函式方法 3 用索引器 4 用來呼叫在建構函式中呼叫過載的建構函式 5 來顯示地體現方法或變數是乙個類內部的類成員 2.類中的成員既可以是例項成員,也可以是靜態成員 ...
MFC第三課 C 特性
首先感謝候俊傑先生與 深入淺出mfc 第二版 以下心得都來自於對該書的學習 一 封裝 member variable成員變數 member function成員函式 把資料宣告為private,不允許外界隨意訪問,只能通過特定的介面來操作,這就是物件導向的封裝 encapsulation 特性。二 ...
C 入門第三課
關係運算子的結果一定是乙個bool型別 關係運算子的結果一定是乙個bool型別 按位運算 與 或 短路與運算 int age 18 bool b age 0 age 100 返回true 短路或運算 int age 18 bool b age 20 age 50 返回true 三目運算子 布林型別 ...