C++關于類的static函數的程序,錯在哪里?
2 回答
慕桂英3389331
TA貢獻2036條經驗 獲得超8個贊
| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 | #include <iostream>using namespace std;class store{public: store(int n,int q,double p); store(){} //加上默認構造函數 void total(); static double average(); double display();private: int num; int quantity; static int SumOfQuan; double price; static double sum;} ;/*全局聲明*/int store::SumOfQuan=0;double store::sum=0.0;store::store(int n,int q,double p){ num = n; quantity = q; price = p;}void store::total(){ sum = sum + quantity*price; SumOfQuan = SumOfQuan + quantity;}double store::average(){ //static 在外面不用再加 return (sum/SumOfQuan);}double store::display(){ cout<<"總收款額: "<<sum<<" 平均售價: "<<SumOfQuan<<endl; return 0.0; //返回值}int main(){ store s[3]; //這沒有默認構造函數 int i = 0; for(;i<3;i++){ s[i].total(); //這里是調用函數 } s[0].display(); return 0;} |
ITMISS
TA貢獻1871條經驗 獲得超8個贊
dluble store::sum=0;
int store::SunOfQuan=1;//全局內初始化
static double store::average(){
return (sum/SumOfQuan);//這要零檢測
}
- 2 回答
- 0 關注
- 753 瀏覽
添加回答
舉報
0/150
提交
取消
