I don't understand this error

Can you help me understand this error.

1
2
3
   error: qualified reference to 'Product' is a constructor name 
    rather than a type wherever a constructor can be declared 
Product::Product& operator= (const Product& p)
The name Product::Product is used to define the constructor of the class.

The result type of the member function Product::operator= is '(lvalue) reference to Product'

1
2
// Product::Product& operator= (const Product& p) { /* ... */ }
Product& Product::operator= (const Product& p) { /* ... */ } 
Topic archived. No new replies allowed.