第九周 动态分配空间存储

来源:互联网 发布:mac删除开机密码 编辑:程序博客网 时间:2024/05/18 13:43

*文件名称:main.cpp 
*作    者:杨栋
*版 本 号:v1.0 


问题描述:以员工工资为例深复制输出工资清单
结果输出:清单



#include<iostream>    
using namespace std;   
class Salary    
{    
public:    
    Salary(int n);   
    Salary(const Salary &s);  
    ~Salary();         
    void input_salary();      
    void show_salary();    
private:    
    double *salary;    
    int number;    
};    


Salary::Salary(int n)  
{  
    number=n;  
    salary=new double[n];  
      
}  
Salary::Salary(const Salary &s)  
{  
    number=s.number;  
    salary=new double[number];  
    for(int i=0;i<number; ++i)    
        *(salary+i)=*(s.salary+i);    
}  
Salary::~Salary()  
{  
    delete[]salary;  
}  
void Salary::input_salary()  
{  
    int i;    
    cout << "请输入"<<number<<"名职工的工资:" << endl;    
    for(i = 0; i < number; ++i)    
     cin >> *(salary+i);    
    return ;    
}  
void Salary::show_salary()  
{  
    cout << "职工工资清单: " ;    
    for(int i = 0; i < number; ++i)    
        cout << *(salary+i)<<" ";    
    cout << endl;    
    return ;    
}  


    
    int main()    
{    
    Salary s1(10);    
    s1.input_salary();    
    Salary s2(s1);    
    s1.show_salary();    
     s2.show_salary();    
    return 0;    
  
}    
0 0
原创粉丝点击