C++作业求助,设计一个关于银行储蓄系统的类的相关问题

谢谢各位!会追加分数的。。

class AccountManager
{
public:
    AccountManager( int _size ){
        size = 0;
        bankList = new (Bank*)[_size];
        if( bankList ){
            size = _size;
            memset( (void*)bankList, 0 , size*sizeof(Bank*) );
        }
    }
    ~AccountManager(){
        if( bankList ){
            delete[] bankList;
        }
    }
public:
    void setBank(int i, Bank* bank){
        if( i < size ){
            bankList[i]=bank;
        }
    }
    Bank* getBank(int i){
        if( i < size ){
            return bankList[i];
        }
        return 0;
    }
    void deposit( Bank* bank, double money ){
        if( ! bank ){
            bank->deposit(money);
        }
    }
    void withdraw(Bank* bank, double money){
        if( ! bank ){
            bank->withdraw(money);
        }
    }
    void transfer(Bank* bank1, Bank* bank2, double money){
        if( ! bank1 && ! bank2 ){
            bank1->deposit( money );
            bank2->withdraw( money ); 
        }
    }
    void printAccount() const{
        for( int i = 0; i < size; ++i ){
            bankList[i]->printMessage();
        }
    }
private:
    Bank**  bankList;
    int     size;
};

温馨提示:答案为网友推荐,仅供参考
相似回答