C++ 基础c';带派生参数的tor

C++ 基础c';带派生参数的tor,c++,C++,我创建了一些类: class Base{ public: Base(int = 0); ~Base(); Base(Base&); Base(Derived&); //<- here int valueOfBase(); protected: int protectedData; private: int baseData; }; class Derived: public Base{ public: Derived(int = 0); De

我创建了一些类:

class Base{
public:
 Base(int = 0);
 ~Base();
 Base(Base&);
 Base(Derived&); //<- here
 int valueOfBase();
protected:
 int protectedData;
private:
 int baseData;
};

class Derived: public Base{
public:
    Derived(int = 0);
    Derived(Derived&);
    ~Derived();
private:
    int derivedData;
};

###//Impplementation in .cpp

Base::Base(Base& base)
{
    baseData = base.baseData;
    protectedData = base.protectedData;
    cout << "base Copy C'tor" << endl;
}

Base::Base(Derived& hello)
{
    baseData = hello.protectedData;
}
我可以用派生的参数来创建基本的c'tor来写这样的东西吗

Derived derived(1);
Base base1 = derived;
如果没有,为什么?
提前感谢

您可能需要
派生的
的转发声明


尝试添加
派生类在基类定义之上。

我没有看到构造函数/析构函数的定义。另外,
派生的
的定义在哪里?@Prasoon Saurav:可以吗,还是我遗漏了什么?您需要提供类
派生的
的正向声明。见乔希的答案。
Derived derived(1);
Base base1 = derived;