title: Const Class Member Copy Constructor
body: <pre><code>#include "booking.h"
  #include &lt;iostream&gt;
  booking::booking (  const std::string p_title,  const std::string p_notice,  const category p_category,  const person p_person,  const booking::Type p_type,  const double p_value ) :
  m_type{ p_type },
  m_title{ p_title },
  m_notice{ p_notice },
  m_person{ p_person },
  m_category{ p_category },
  m_value { p_value }
  {
      std::cout &lt;&lt; "Booking was created" &lt;&lt; std::endl; // Debug Message
  }
  </code></pre>
  
  <p>These are the files (everything thats necessary to know in my opinion)</p>
  
  <pre><code>#pragma once
  #include &lt;string&gt;
  #include "person.h"
  #include "category.h"
  class booking
  {
  public:
      enum Type { TYPE_REVENUE, TYPE_EXPENDITURE };
      booking ( const std::string p_title, const std::string p_notice, const category p_category, const person p_person, const booking::Type p_type, const double p_value ); //Basic Constructor
      ~booking();
      Type GetType ( );
      std::string GetTitle ( );
      std::string GetNotice ( );
      category GetCategory ( );
      double GetValue ( );
  
  private:
       Type m_type;
       std::string m_title;
       std::string m_notice;
       category m_category;
       person m_person;
       double m_value;
  
  };
  </code></pre>
  
  <p>If i put one of the class members (like m_type or the double value, it doesnt matter which) to const, it throws following error:</p>
  
  <blockquote>
    <p>Fehler    1   error C2280: <code>booking &amp;booking::operator =(const booking &amp;)</code> : attempting to reference a deleted function   C:\Program Files (x86)\Microsoft Visual C++ Compiler Nov 2013 CTP\include\utility   53</p>
  </blockquote>
  
  <p>I dont get why the compiler complains about the copy constructor and whats basicly the matter.</p>