Index[SYMBOL] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [K] [L] [M] [N] [O] [P] [R] [S] [T] [U] [V] [W] [X] [Z] object-oriented principles, encapsulation and objects 21 returning, vs. references alignment of 2nd compilation dependencies and copying all parts defining definitions, postponing 2nd handles to internals of 2nd initialization, with vs. without arguments layout vs. array layout multiple addresses for partial copies of placing in shared memory resource management and 2nd returning, vs. references size, pass-by-value and sizes, determining vs. variables old-style casts Oldham, Jeffrey D operations, reordering by compilers operator delete aaa] [See also delete[operator delete] behavior of 2nd efficiency of name hiding and 2nd non-member, pseudocode for placement replacing 2nd standard forms of virtual destructors and operator delete[i] 2nd 3rd operator new aaa] [See also new[operator new] arrays and 2nd bad_alloc and 2nd behavior of 2nd efficiency of infinite loop within inheritance and 2nd name hiding and 2nd new-handling functions and non-member, pseudocode for out-of-memory conditions and 2nd 3rd 4th placement replacing 2nd returning 0 and 2nd standard forms of std::bad_alloc and 2nd operator new[i] 2nd 3rd operator(_) (function call operator) operator* for Rationals operator= const members and 2nd default implementation implicit generation reference members and 2nd return value of 2nd self-assignment and 2nd when not implicitly generated 2nd operator[i] overloading on const 2nd return type of optimization by compilers during compilation inline functions and order initialization of non-local statics 2nd member initialization ostream_iterators other languages, compatibility with output iterators output_iterator_tag overloading as if...else for types on const 2nd std::swap overrides of virtuals, preventing ownership transfer |