Search code examples
c++qtpointersqsharedpointer

Check two QSharedPointer have equal data


I have two QSharedPointer, can I check are they pointed to the same object using operator== like this

QSharedPointer1 == QSharedPointer2

or I must write

QSharedPointer1.data() == QSharedPointer2.data()

Object that are stored in pointers have overloaded operator==.


Solution

  • From the QSharedPointer class reference:

    bool operator==(const QSharedPointer<T>& ptr1, const QSharedPointer<X>& ptr2)

    Returns true if the pointer referenced by ptr1 is the same pointer as that referenced by ptr2.