title: Can I use the = operator to assign one object's values to another object, without overloading the operator?
body: <p>this was a recent T/F question that came up in my cs course that I found a bit confusing.</p>
  
  <p>The textbook states:</p>
  
  <blockquote>
    <p>The = operator may be used to assign one object's data to another object, or to initialize one object with another object's data. By default, each member of one object is copied to its counterpart in the other object.</p>
  </blockquote>
  
  <p>The question verbatim was:</p>
  
  <blockquote>
    <p>You cannot use the = operator to assign one object's values to another object, unless you overload the operator. T/F?</p>
  </blockquote>
  
  <p>Judging from that particular paragraph of the textbook, I answered false. However, it turns out the quiz answer was actually true.</p>
  
  <p>When I looked up the question online, I saw other sources listing the answer as "false" as well. Granted, these were just generic flashcard / quiz websites, so I don't put much stock in them. </p>
  
  <p>Basically, I'm just curious what the real answer is for future studying purposes.</p>
  
  <hr>
  
  <p>P.S.: The textbook later goes on to state: "In order to change the way the assignment operator works, it must be overloaded. Operator overloading permits you to redefine an existing operator’s behavior when used with a class
  object." </p>
  
  <p>I feel like this is related and supports the "true" answer, but I'm not really sure.</p>