c++ 생성자 관련 질문

#include <iostream>
#include <cstring>

using namespace std;

namespace COMP_POS {
    enum {
        CLERK = 1, SENIOR, ASSIST, MANAGER
    };

    void ShowPositionInfo(int pos)
    {
        switch (pos) {
        case CLERK:
            cout << "사원" << endl;
            break;
        case SENIOR:
            cout << "주임" << endl;
            break;
        case ASSIST:
            cout << "대리" << endl;
        case MANAGER:
            cout << "과장" << endl;
        }
    }
}

class NameCard {
private:
    char * name;
    char * company;
    char * phone;
    int position;
public:
    NameCard(char * name, char * company, char * phone, int mypos) : position(mypos)
    {
        this->name = new char[strlen(name) + 1];
        strcpy(this->name, name);
        this->company = new char[strlen(company) + 1];
        strcpy(this->company, company);
        this->phone = new char[strlen(phone) + 1];
        strcpy(this->phone, phone);
    }
    NameCard(const NameCard &copy) : position(copy.position)
    {
        name = new char[strlen(copy.name) + 1];
        strcpy(name, copy.name);
        company = new char[strlen(copy.company) + 1];
        strcpy(company, copy.company);
        phone = new char[strlen(copy.phone) + 1];
        strcpy(phone, copy.phone);
    }
    void ShowNameCardInfo()
    {
        cout << "이름 : " << name << endl;
        cout << "회사 : " << company << endl;
        cout << "전화번호 : " << phone << endl;
        cout << "직급 : ";
        COMP_POS::ShowPositionInfo(position);
        cout << endl << endl;
    }
    ~NameCard()
    {
        delete[]name;
        delete[]company;
        delete[]phone;
        cout << "called destructor!" << endl;
    }
};

int main()
{
    NameCard manClerk("Lee", "ABC", "010-8200-6545", COMP_POS::CLERK);
    NameCard copy1 = manClerk;
    NameCard manSenior("Hong", "Organge", "01-8222-54545", COMP_POS::SENIOR);
    NameCard copy2 = manSenior;
    copy1.ShowNameCardInfo();
    copy2.ShowNameCardInfo();
    return 0;
}

윤성우의 열혈 c++ 프로그래밍을 교재삼아 공부하고 있는 중입니다. 위는 예제 중 하나를 푼 것인데 main함수에서 manClerk 과 manSenior 부분에서 각각 "Lee" 와 "Hong"에서 붉은 줄이 쳐지면서

인수 목록이 일치하는 생성자 "NameCard::NameCard"의 인스턴스가 없습니다.

라는 오류가 뜹니다...

책의 답안과 다른 것이 없는데 왜 이런 오류가 생길까요...?

1답변

ᕕ( ᐛ )ᕗ
로그인이 필요합니다

작성한 답변에 다른 개발자들이 댓글을 작성하거나 댓글에 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.