C++ usually doesn't provide automatic garbage collection. Some C++ features, and much C++ code is poorly suited for AGC, so programmers must explicitly deal with memory management issues, which can get quite difficult and needs much time.
More information
More information
Related categories 1
Sites 21
This article provides an in-depth look at the "pure virtual function called" error message.
Introduces two key concepts: the use of a generic requirements based approach to simplify and adapt the use of the counted body pattern and the ability to dynamically and non-intrusively add capabilities to fixed types using the runtime mixin pattern.
Show how garbage collection works and what it actually costs.
Covers the design of a global memory manager that is as fast and space-efficient as per-class allocators.
Introduces smart pointers and takes a look at Boosts various smart pointer templates (scoped_ptr, scoped_array, shared_ptr, and shared_array).
Explains what smart pointers are, why they should be used, and which one should be used.
Matthew and Bjorn update the well-known Rule of The Big Three, explaining which one of those member functions is not always needed.
(October 01, 2004)
Memory management is scary. It should be: A lot can go wrong--often very wrong. But a moderately experienced C or C++ programmer can learn and understand memory hazards completely.
(February 06, 2004)
Presents a list of simple, powerful techniques that can be used to deal with memory in C++ programs.
(August 07, 2003)
This article explains design principles that will help keeping memory management error out of C++ code.
(June 19, 2003)
This article discusses C++ in the context of several other popular languages. It also describes the kinds of memory errors that can occur in C++ programs.
(May 08, 2003)
Andrei Alexandrescu discusses smart pointers, from their simplest aspects to their most complex ones and from the most obvious errors in implementing them to the subtlest ones--some of which also happen to be the most gruesome.
(April 18, 2003)
Stephen Dewhurst discusses how the various features of C++ are used together in memory management, how they sometimes interact in surprising ways, and how to simplify their interactions.
(January 24, 2003)
Andrei Alexandrescu navigates through the sometimes treacherous waters of using smart pointers, which imitate built-in pointers in syntax and semantics but perform a host of additional tasks that built-in pointers can't.
(February 08, 2002)
Delves deeper into the question of what operator new() failures mean, and how best to detect and handle them.
(May 01, 2001)
This article follows through the implementation of a smart pointer class that overcames deficiencies of existing smart pointer implementations.
[PDF] (March 13, 2001)
Explains why a class that provides its own class-specific operator new(), or operator new[](), should also provide corresponding class-specific versions of plain new, in-place new, and nothrow new.
(March 01, 2001)
This article deals with refactoring the code originally presented in part 1 in order to allow polymorphic types to be used.
(January 26, 2001)
An article on using garbage collection through the use of smart pointers.
(January 18, 2001)
Answers the question of how much memory the various standard containers use to store the same number of objects of the same type T.
(January 01, 2001)
Explains why auto_ptr neatly solves common C++ design and coding problems, and why using it can lead to more robust code.
(October 01, 1999)
Introduces two key concepts: the use of a generic requirements based approach to simplify and adapt the use of the counted body pattern and the ability to dynamically and non-intrusively add capabilities to fixed types using the runtime mixin pattern.
Show how garbage collection works and what it actually costs.
Introduces smart pointers and takes a look at Boosts various smart pointer templates (scoped_ptr, scoped_array, shared_ptr, and shared_array).
This article provides an in-depth look at the "pure virtual function called" error message.
Covers the design of a global memory manager that is as fast and space-efficient as per-class allocators.
Explains what smart pointers are, why they should be used, and which one should be used.
Matthew and Bjorn update the well-known Rule of The Big Three, explaining which one of those member functions is not always needed.
(October 01, 2004)
Memory management is scary. It should be: A lot can go wrong--often very wrong. But a moderately experienced C or C++ programmer can learn and understand memory hazards completely.
(February 06, 2004)
Presents a list of simple, powerful techniques that can be used to deal with memory in C++ programs.
(August 07, 2003)
This article explains design principles that will help keeping memory management error out of C++ code.
(June 19, 2003)
This article discusses C++ in the context of several other popular languages. It also describes the kinds of memory errors that can occur in C++ programs.
(May 08, 2003)
Andrei Alexandrescu discusses smart pointers, from their simplest aspects to their most complex ones and from the most obvious errors in implementing them to the subtlest ones--some of which also happen to be the most gruesome.
(April 18, 2003)
Stephen Dewhurst discusses how the various features of C++ are used together in memory management, how they sometimes interact in surprising ways, and how to simplify their interactions.
(January 24, 2003)
Andrei Alexandrescu navigates through the sometimes treacherous waters of using smart pointers, which imitate built-in pointers in syntax and semantics but perform a host of additional tasks that built-in pointers can't.
(February 08, 2002)
Delves deeper into the question of what operator new() failures mean, and how best to detect and handle them.
(May 01, 2001)
This article follows through the implementation of a smart pointer class that overcames deficiencies of existing smart pointer implementations.
[PDF] (March 13, 2001)
Explains why a class that provides its own class-specific operator new(), or operator new[](), should also provide corresponding class-specific versions of plain new, in-place new, and nothrow new.
(March 01, 2001)
This article deals with refactoring the code originally presented in part 1 in order to allow polymorphic types to be used.
(January 26, 2001)
An article on using garbage collection through the use of smart pointers.
(January 18, 2001)
Answers the question of how much memory the various standard containers use to store the same number of objects of the same type T.
(January 01, 2001)
Explains why auto_ptr neatly solves common C++ design and coding problems, and why using it can lead to more robust code.
(October 01, 1999)
Last update:
July 5, 2014 at 15:35:02 UTC
Check out
Recreation: Pets: Cats: Breeds: Bengal: Catteries: North America: United States: Oklahoma
- Recently edited by cherel
- Recently edited by cherel