const pointer members and operator=
<pre><code>class Point {
public:
    Point(int x, int y) : { x = new int(x); y = new int(y) }
    ...
    ...
    Point&amp; operator=(const Point&amp; other) {
        if(this!=&amp;other){
            delete x;
            delete y;
            x = new int(*other.x);
            y = new int(*other.y);
        }
        return *this;
    }
private:
    const int* x;
    const int* y;
}
</code></pre>

<p>Will this implementation of operator= work even if x and y of this were already initialized? does deleting a const pointer allow us to reassign it?</p>
