Difference between revisions of "Cpp Coding Standards/The Cpp Standard Template Library"

From Apache OpenOffice Wiki
Jump to: navigation, search
 
Line 1: Line 1:
Topic-Id: '''STL'''
+
#REDIRECT [[Cpp_Coding_Standards/STL]]
 
 
Use and pitfalls of the C++ STL.
 
----
 
=== Summary ===
 
==== Prefer STL Containers <span id="Cont">(Cont)</span> ====
 
Use STL containers instead of self-made types. In particular, use std::vector instead of Sv*Arrays, std::list instead of DECLARE_LIST etc.
 
 
 
Use std::vector (or an appropriate string class) instead of C-arrays, if there is the slightest chance the array length may ever become variable. 
 
 
 
In most cases vector is the best choice for a container.
 
 
 
You can use vector (and the c_str() function of string classes) to exchange data with non-C++ APIs.
 
 
 
[[/Cont|Details]]
 
 
 
==== Erasing Container Memory <span id="EraseMem">(EraseMem)</span> ====
 
Use the standard idiom to shrink the memory footprint of STL containers.
 
 
 
[[/EraseMem|Details]]
 
 
 
==== Pure Predicates <span id="PurePred">(PurePred)</span> ====
 
Make predicates pure functions, when used in STL algorithms.
 
 
 
[[/PurePred|Details]]
 
 
 
----
 
[[Category:Coding Standards]]
 

Latest revision as of 18:52, 22 May 2007

Personal tools