类中int数组为什么不能正确访问?
#include <string>#include <iostream>using namespace std;class student{ private: string name; int score[3]; int sum; public: student(int s[], string name= ""); student(const student& s); ~student(){ /*delete score;*/ }; int* getScore() const; int getSum() const; string getName() const; student& operator=(const student& s); bool operator==(const student& s); bool operator<(const student& s);};student::student( int sc[], string n):name(n),sum(0){ for(int i=0; i<3; i++){ score[i] = sc[i]; sum += sc[i]; }}int* student::getScore() const{ int sc[3] = {0}; for(int i=0; i<3; i++) sc[i] = this->score[i]; return sc;}void main(){ int sc2[3] = {10,20,30}; student s2(sc2, "赵");int* temp; temp = s2.getScore();for(int i=0; i<3; i++){ cout << "****************s2.score[" << i << "]= " << temp[i] <<endl;}}
#include <string>#include <iostream>using namespace std;class student{private: string name; int score[3]; int sum;public: student(int s[], string name= ""); student(const student& s); ~student(){ /*delete score;*/ }; const int* getScore() const; int getSum() const; string getName() const; student& operator=(const student& s); bool operator==(const student& s); bool operator<(const student& s);};student::student( int sc[], string n):name(n),sum(0){ for(int i=0; i<3; i++){ score[i] = sc[i]; sum += sc[i]; }}const int* student::getScore() const{ return score;}int main(){ int sc2[3] = {10,20,30}; student s2(sc2, "赵"); const int* temp; temp = s2.getScore(); for(int i=0; i<3; i++){ cout << "****************s2.score[" << i << "]= " << temp[i] <<endl; } return 0;}