title: OOP, assignment operator does not work
body: <p>This is from my code:</p>
  
  <pre><code>struct R3
  {
         float x;
         float y;
         float z;
  
         R3(float, float, float);
         R3();
  };
  
  R3::R3(float a, float b, float c)
  {
          x = a;
          y = b;
          z = c;
  }
  
  R3::R3()
  {
          x = 0;
          y = 0;
          z = 0;
  }
  
  struct Bodies
  {
         int Mass;
         float Dist[100];
         R3 Place(float, float, float);
         R3 Speed(float, float, float);
         R3 Acc(float, float, float);
  
         Bodies(int, R3, R3, R3);
  };
  
  Bodies::Bodies(int M, R3 XYZ, R3 V, R3 A)
  {
         Mass = M;
         Place = XYZ;
         Speed.x = V.x;
         Speed.y = V.y;
         Speed.z = V.z;
         Acc.x = A.x;
         Acc.y = A.y;
         Acc.z = A.z;
  }
  </code></pre>
  
  <p>My problem is, that for Place = XYZ;, it's showing the error "invalid use of member (did you forget the '&amp;'?)"
  and for Speed.x = V.x; "insufficient contextual information to determine type".</p>