01/10/2018, 15:49
Khai báo biến trong class: hàm khởi tạo mặc định
Cho mình hỏi tại sao mình khai báo như vậy chương trình lại chạy êm xuôi vậy:
#include <string>
#include <iostream>
class Employee
{
private:
int m_id;
std::string m_name;
public:
Employee(int id=0,const std::string &name="John"):
m_id(id),m_name(name)
{
std::cout<<"Employee "<<m_name<<" created.
";
}
Employee(const std::string &name): Employee(0,name){}
};
int main()
{
Employee employee;
}
Mình nghĩ biến employee được khai báo không có đối số thì phải báo lỗi chứ, do compiler đã không tạo default constructor trong trường hợp này.
Bài liên quan