为什么把这四个const删了之后就会报错?

#include "class_second.h"
int main(void)
{
    AccountBank doc("Zhou" , "10086" ,2134);
    
    return 0;
}
//
// Created by 33559 on 2022/10/3.
//

#ifndef CHAPTER_4_CLASS_CLASS_SECOND_H
#define CHAPTER_4_CLASS_CLASS_SECOND_H

#include 
#include 
using namespace std;
class AccountBank{
private:
    string name;
    string account;
    double money;

public:
    AccountBank();
    AccountBank(const string &m_name,
                const string &m_account,
                double num);
    void show()const;
    void deposit(double cash);
    void balance(double cas);
};


#endif //CHAPTER_4_CLASS_CLASS_SECOND_H
//
// Created by 33559 on 2022/10/3.
//
#include "class_second.h"

AccountBank::AccountBank()
{
    name = " ";
    account = " ";
    money = 0.0;
}

AccountBank::AccountBank(const string &m_name,
                         const string &m_account,
                         double num)
{
    name = m_name;
    account = m_account;
    money = num;
}

为什么把

AccountBank::AccountBank(const string &m_name,
                        const string &m_account,
                        double num)

public:
    AccountBank();
    AccountBank(const string &m_name,
                const string &m_account,
                double num);

的const全部删了之后
这里会报错为什么?

  AccountBank doc("Zhou" , "10086" ,2134);

因为"Zhou"是常量字符串啊,所以如果函数参数不是常量类型,会报错
主要原因是你调用时的参数和函数定义的参数类型不一致造成的。
你写成 string name = "Zhou";string id = "10086",然后AccoutBank doc(name,id,2134);那么函数中就不要加const了

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^