Listing 9

#include <memory>
#include <iostream>
using std::tr1::shared_ptr;
using std::cout;

int main()
  { // demonstrate equality comparisons
  shared_ptr<int> sp0(new int);
  shared_ptr<int> sp1(sp0);
  shared_ptr<int> sp2(new int);
  shared_ptr<int> sp3;
  shared_ptr<int> sp4;
  if (sp0 == sp1)
    cout << "sp0 == sp1\n";
  if (sp0 != sp2)
    cout << "sp0 != sp2\n";
  if (sp0 != sp3)
    cout << "sp0 != sp3\n";
  if (sp3 == sp4)
    cout << "sp3 == sp4\n";
  return 0;
  }