title: How is a constructor for a derived class supposed to be like in c++ when derived class has added data member
body: <p>I am new to c++. I have been trying to get past this error. I know when a class in derived, it inherits everything from the base class, but what if the derived class has other data members? How is the constructor suppose to be?</p>
  
  <p>When I try putting only the new I try to pass parameters to the newly made class members in the constructor I get an error to say it doesn't match that of the base class. When I try using that of the base class and adding the new data members it tells me I am redefining. So I wonder whats left to do to get past this error below is my code.</p>
  
  <p>This is the base class:</p>
  
  <pre><code>class movielibrarybase
  {
  
  
  public:
          movielibrarybase(string name, string dirname, string gen, int price);
  
          void setname(string name);
          string getname();
  
          void setdirector_name(string dirname);
          string getdirector_name();
  
          void setgenre(string gen);
          string getgenre();
  
  
          void setprice(int price);
          int getprice();
  
          void display();
  
          ~movielibrarybase();
  
      protected:
      string name;
      string director_name;
      string genre;
      int price;
  };
  </code></pre>
  
  <p>And this is the derived class:</p>
  
  <pre><code>class songlibrary: public movielibrarybase
  {
      public:
          songlibrary();
  
  
          void setartist_name(string name);
          string getartist_name();
  
  
  
          void setsong_position(string position);
          string getsong_position;
  
          ~songlibrary();
  
  
      protected:
  
      string artist_name;
      string song_postion;
  };
  </code></pre>
  
  <p>I am getting the following errors:</p>
  
  <p>songlibrary.cpp||In constructor 'songlibrary::songlibrary(std::string, std::string, std::string, int, std::string, std::string)':|
  songlibrary.cpp|6|error: no matching function for call to 'movielibrarybase::movielibrarybase()'|
  movielibrarybase.cpp|3|note: candidates are: movielibrarybase::movielibrarybase(std::string, std::string, std::string, int)|
  movielibrarybase.h|8|note:                 movielibrarybase::movielibrarybase(const movielibrarybase&amp;)|
  songlibrary.cpp|34|error: no 'std::string songlibrary::getsong_position()' member function declared in class 'songlibrary'|</p>