title: C++ operator overloading with pointers
body: <pre><code>struct Test {
      int A = 0;
      int B = 0;
  };
  
  Test* operator+(const Test *x, const Test *r) {
  
      Test *test = new Test;
      test-&gt;A = x-&gt;A + r-&gt;A;
      test-&gt;B = x-&gt;B + r-&gt;B;
      return test;
  }
  </code></pre>
  
  <p>Why this wont work and give's :</p>
  
  <blockquote>
    <p>3 IntelliSense: nonmember operator requires a parameter with class or enum type</p>
  </blockquote>