The RefPtr smartpointer
Glib::RefPtr is a smartpointer. Specifically, it is a reference-counting smartpointer. You might be familiar with std::auto_ptr<>, std::unique_ptr<> and std::shared_ptr<>, which are also smartpointers. Glib::RefPtr<> is similar to std::shared_ptr<>, which is also reference-counting. Glib::RefPtr<> was introduced long before there was a reference-counting smartpointer in the C++ Standard Library.
A smartpointer acts much like a normal pointer. Here are a few examples.
- A.1. Copying
- A.2. Dereferencing
- A.3. Casting
- A.4. Checking for null
- A.5. Constness