建立物件陣列,內放學生的資料 學號,成績 ,建立函式max,用指向物件的

時間 2021-07-22 01:55:30

1樓:娛樂小八卦啊

建立物件如下:

class student

public:

student(string n,float s):number(n),score(s){}

friend void max(student *);  //宣告友元函式

private:

string number; //將學號宣告為字串

float score;

擴充套件資料

所謂的物件陣列,就是指包含了一組相關的物件,但是在物件陣列的使用中一定要清楚一點:陣列一定要先開闢空間,但是因為其是引用資料型別,所以陣列裡面的每一個物件都是null值,則在使用的時候陣列中的每一個物件必須分別進行例項化操作。

物件陣列的宣告:

先定義,再開闢空間

類名稱 物件陣列名 = null;

物件陣列名 = new 類名稱[長度];

定義並開闢陣列

類名稱 物件陣列名 = new 類名稱[長度];

在宣告物件陣列後 ,必須對每個陣列成員進行例項化話 才能直接使用,否則報空指標異常!

2樓:匿名使用者

#include

using namespace std;

class student

;student::student(int n,int g)//找出成績最高的學生的序號

int maxgradeindex(student* s)}return  index;

}int main()

;int maxgradestnum = maxgradeindex(a);

cout<<"成績最好的學生學號是:"<

c++ builder執行輸出如下:

c++,建立一個物件陣列,內放5個學生的資料(學號成績)我的程式錯在**?

3樓:愛問西瓜愛答樹

建構函式不對,是兩個引數(int,int)。

所有你得:

p=new student(1,1)[5];

否則自己加一個建構函式

student::student();

然後再加一個輸入的函式input(...);

才能p=new student()[5];

*(p+1).input(...);

4樓:匿名使用者

student* = new student[5];

要那樣開闢記憶體,你必須要有預設引數的建構函式,就是說class student;

5樓:真的無奈啊

student()

{}自己再加一個空建構函式,當你自己定義建構函式時,系統不再生成預設空建構函式!

C 建立物件陣列,內放學生的資料 學號,成績 ,設立函式max,用指標指向陣列元首

需要兩個陣列,分別存放學號和成績。如果只能用一個陣列,則需要定義一個類,類中包含學號和成績兩個變數,然後再定義一個陣列存放5個類物件。如果用第一種方法,可以參考我的另一個回答 如果要第二種方法可以hi我! 北風微風 類似的,c 書上應該都有,有時間的話,把書上的 敲一下。include using ...

有一維陣列,內放學生成績,寫函式,求出平均分

求平均值就是將所有值相加然後除以個數就可以了。include void main int i,sum 0 for i 0 i 10 i printf 平均成績為 0.1f sum 10.0 滿意請採納,謝謝。c語言程式設計 有乙個一維陣列,內放10個學生成績,寫乙個函式,求出平均分,最高分和最低分。...

C建立包含同學資料的物件陣列,並用指標指向首物件,輸出結果為什麼是亂的

include include include using namespace std class student public student int,int student void display return this this number stu.number this score st...