Smart Pointers (std::unique_ptr, std::shared_ptr)

Topics

Dependencies

cluster_cxx11 The New C++ (11-…) cluster_cxx11_smart_pointers Smart Pointers (std::unique_ptr, std::shared_ptr) cluster_cxx11_new_language_features New Language Features cluster_cxx11_new_language_features_move_pf Move Semantics, Rvalue References cluster_cxx03 C++ cluster_cxx03_functions_and_methods Functions and Methods cluster_cxx03_data_encapsulation Data Encapsulation cluster_c The C Programming Language cluster_c_introduction Introduction cxx11_smart_pointers_introduction Introduction cxx11_new_language_features_miscellaneous Miscellaneous cxx11_smart_pointers_introduction->cxx11_new_language_features_miscellaneous cxx11_smart_pointers_shared_ptr std::shared_ptr cxx11_smart_pointers_shared_ptr->cxx11_smart_pointers_introduction cxx11_smart_pointers_unique_ptr std::unique_ptr cxx11_smart_pointers_shared_ptr->cxx11_smart_pointers_unique_ptr cxx11_smart_pointers_closing_words Smart Pointers: Closing Words cxx11_smart_pointers_closing_words->cxx11_smart_pointers_shared_ptr cxx11_smart_pointers_closing_words->cxx11_smart_pointers_unique_ptr cxx11_smart_pointers_weak_ptr std::weak_ptr cxx11_smart_pointers_weak_ptr->cxx11_smart_pointers_introduction cxx11_smart_pointers_weak_ptr->cxx11_smart_pointers_shared_ptr cxx11_smart_pointers_introduction_livehack (Trying To) Handwrite A Smart Pointer Class in C++ Before C++11 cxx11_smart_pointers_introduction_livehack->cxx11_smart_pointers_introduction cxx11_smart_pointers_unique_ptr->cxx11_smart_pointers_introduction cxx11_new_language_features_move_pf_overview Lvalues, Rvalues, And Moving cxx11_new_language_features_miscellaneous->cxx11_new_language_features_move_pf_overview cxx11_new_language_features_move_pf_overview->cxx11_smart_pointers_unique_ptr cxx03_functions_and_methods_references References cxx11_new_language_features_move_pf_overview->cxx03_functions_and_methods_references cxx03_data_encapsulation_object_copy Object Copy (And Resource Management): There Be Dragons cxx11_new_language_features_move_pf_overview->cxx03_data_encapsulation_object_copy cxx03_introduction Introduction c_introduction_installation Installation cxx03_introduction->c_introduction_installation cxx03_functions_and_methods_this this cxx03_functions_and_methods_references->cxx03_functions_and_methods_this cxx03_functions_and_methods_methods Methods cxx03_functions_and_methods_this->cxx03_functions_and_methods_methods cxx03_functions_and_methods_overloading Overloading cxx03_functions_and_methods_methods->cxx03_functions_and_methods_overloading cxx03_data_encapsulation_classes_objects Classes and Objects cxx03_functions_and_methods_overloading->cxx03_data_encapsulation_classes_objects cxx03_data_encapsulation_ctor_dtor More Constructors, Destructors cxx03_data_encapsulation_ctor_default Default Constructor cxx03_data_encapsulation_ctor_dtor->cxx03_data_encapsulation_ctor_default cxx03_data_encapsulation_ctor_custom Custom Constructor cxx03_data_encapsulation_ctor_dtor->cxx03_data_encapsulation_ctor_custom cxx03_data_encapsulation_classes_objects->cxx03_introduction cxx03_data_encapsulation_c Object Oriented Programming In Good Ol’ C cxx03_data_encapsulation_classes_objects->cxx03_data_encapsulation_c cxx03_data_encapsulation_object_copy->cxx03_data_encapsulation_ctor_dtor cxx03_data_encapsulation_ctor_default->cxx03_data_encapsulation_ctor_custom cxx03_data_encapsulation_c->cxx03_introduction cxx03_data_encapsulation_ctor_custom->cxx03_data_encapsulation_classes_objects