title: C++ error: no matching function for call to 'Track::Track(char, char)'
body: <p>I'm trying to assign a one-dimensional array to my default constructor, but I keep getting this error message. Is there a way to create two default constructors for the same class, one with no parameters and one with parameters?</p>
  
  <p><strong>header</strong>    </p>
  
  <pre><code>#include &lt;iostream&gt;
  #include &lt;string&gt;
  
  
  using namespace std; 
  
  #ifndef SUBWAY_H
  #define SUBWAY_H
  
  
  class Track
  {
      public:
      //Default Constructor 
      Track();                      //error here 
  
      //Destructor 
      ~Track();
  
      //Member variables 
      char node_1; 
      char node_2; 
      bool visited; 
  };
  
  
  class Station
  {
      public:
      //Default Constructor 
      Station();
  
      //Destructor 
      ~Station();
  
      //Member variables 
      char station_name; 
      int track_starting_ID;
      int track_size; 
  };
  
  
  class SubwaySystem
  {
      public:
      //Default Constructor
      SubwaySystem();
  
      //Destructor 
      ~SubwaySystem();
  
      //Member variables 
      Track my_track[34];
      Station my_station[12];
  
      int count_routes; 
  };
  
  
  
  #endif
  </code></pre>
  
  <p><strong>cpp</strong></p>
  
  <pre><code>#include "subway.h"
  
  SubwaySystem::SubwaySystem()
  {
      my_track[0] = Track('a', 'b'); //error here 
      ...
  
  }
  </code></pre>