Languages
- 1441
- The Rule of The Big Two
- 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)
- 1442
- Memory Hygiene in C and C++: Safe Programming with Risky Data
- 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)
- 1443
- C++ Memory Management: From Fear to Triumph, Part 3
- Presents a list of simple, powerful techniques that can be used to deal with memory in C++ programs. (August 07, 2003)
- 1444
- C++ Memory Management: From Fear to Triumph, Part 2
- This article explains design principles that will help keeping memory management error out of C++ code. (June 19, 2003)
- 1445
- C++ Memory Management: From Fear to Triumph, Part 1
- 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)
- 1446
- Smart Pointers in C++
- 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)
- 1447
- C++ Memory and Resource Management
- 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)
- 1448
- Smart Pointers
- 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)
- 1449
- To New, Perchance to Throw, Part 2
- Delves deeper into the question of what operator new() failures mean, and how best to detect and handle them. (May 01, 2001)
- 1450
- A Generic Non-intrusive Smart Pointer Implementation
- This article follows through the implementation of a smart pointer class that overcames deficiencies of existing smart pointer implementations. [PDF] (March 13, 2001)
- 1451
- To New, Perchance to Throw, Part 1
- 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)
- 1452
- A Garbage Collection Framework for C++, Part II
- This article deals with refactoring the code originally presented in part 1 in order to allow polymorphic types to be used. (January 26, 2001)
- 1453
- A Garbage Collection Framework for C++
- An article on using garbage collection through the use of smart pointers. (January 18, 2001)
- 1454
- Containers in Memory: How Big Is Big?
- 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)
- 1455
- Using auto_ptr Effectively
- 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)
- 1456
- C++ Coding Standard
- Proposed coding guidelines that have evolved over many projects, many companies, and literally a total of many weeks spent arguing.
- 1458
- C++ Programming Style Guidelines
- Lists C++ coding recommendations common in the C++ development community. (Geotechnical Software Services)
