C++ 动态创建对象数组
生活随笔
收集整理的這篇文章主要介紹了
C++ 动态创建对象数组
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
使用運(yùn)算符 new 也可以創(chuàng)建數(shù)組類型的對(duì)象,用 new 運(yùn)算符動(dòng)態(tài)創(chuàng)建一維數(shù)組的語法形式為:
new 類型名 [數(shù)組長度]; #include <iostream> using namespace std;class Point{private:int x, y;public:Point(): x(0), y(0){cout << "默認(rèn)構(gòu)造函數(shù)調(diào)用." << endl;}Point(int x, int y) : x(x), y(y){cout << "有參構(gòu)造函數(shù)調(diào)用." << endl;}~Point(){cout << "析構(gòu)函數(shù)調(diào)用." << endl;}int getX() const{return x;}int getY() const{return y;}void move(int x, int y){this -> x = x;this -> y = y;} };int main(){Point *point = new Point[2]; // 創(chuàng)建對(duì)象數(shù)組 還可以這么寫 Point *point = new Point[2]();point[0].move(25, 15); // 通過指針訪問數(shù)組元素的成員point[1].move(35, 45); // 通過指針訪問數(shù)組元素的成員delete[] point; // 刪除整個(gè)對(duì)象數(shù)組 return 0; }注:
- 用 new 動(dòng)態(tài)創(chuàng)建一維數(shù)組時(shí),在方括號(hào)后仍然可以加小括號(hào)“()”,但小括號(hào)內(nèi)不能帶任何參數(shù)。是否加"()“的區(qū)別在于,不加”()",則對(duì)數(shù)組每個(gè)元素的初始化,與執(zhí)行"new T"時(shí)所進(jìn)行初始化的方式形同;加“()”,則與執(zhí)行"new T()"所進(jìn)行初始化的方式相同。
- 如果使用 new 創(chuàng)建的數(shù)組,用 delete 刪除時(shí)在指針名前面要加上"[]"。
總結(jié)
以上是生活随笔為你收集整理的C++ 动态创建对象数组的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C++ 平面点类
- 下一篇: C++ 用vector创建数组对象