[每日一氵] C++ 类 “xxx“ 不存在默认构造函数

80年不写C++, 今天遇到 类 "xxx" 不存在默认构造函数 我都忘了怎么解决…

customer.h 文件:

#ifndef CUSTOM_H
#define CUSTOM_H

#include<string>

class Customer{
    
    
    public:
        Customer(std::string name, int age);
        // virtual ~Customer();
        void printInfo() const;

    private:
        std::string m_strName;
        int m_iAge;
};

#endif

customer.cpp 文件:

#include <iostream>
#include "customer.h"

using namespace std;

Customer::Customer(string name, int age){
    
    
    m_strName = name;
    m_iAge = age;
}

void Customer::printInfo() const{
    
    
    cout << "name: " << m_strName << endl;
    cout << "age : " << m_iAge << endl;
    cout << endl;
}

代码报错位置

m_xxxx = new Customer[12]; // 堆申请内存(可能会失败)

报错:

"Customer" 不存在默认构造函数

给他传入一个默认值就好了,在 customer.h 文件中修改:

Customer(std::string name="", int age=-1);

猜你喜欢

转载自blog.csdn.net/HaoZiHuang/article/details/131881441