Effective C++ Third Edition 55 Specific Ways to Improve Your Programs and Designs

 

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]

identity test

if...else for types

implementation-dependent behavior, warnings and

implementations     decoupling from interfaces

     default, danger of 2nd     inheritance of 2nd

     of derived class constructors and destructors     of Interface classes

     references

     std::max     std::swap implicit inline request

implicit interfaces 2nd

implicit type conversions vs. explicit 2nd

implicitly generated functions 2nd 3rd

     disallowing 2nd

incompatibilities, with built-in types

incorrect code and efficiency

infinite loop, in operator new

inheritance

     accidental 2nd

     combining with templates

     common features and

     intuition and 2nd

     mathematics and

     mixin-style     name hiding and 2nd     of implementation 2nd

     of interface 2nd     of interface vs. implementation 2nd     operator new and 2nd

     penguins and birds and 2nd

     private 2nd

     protected

     public 2nd

     rectangles and squares and 2nd     redefining non-virtual functions and 2nd     scopes and     sharing features and inheritance, multiple 2nd     ambiguity and     combining public and private

     deadly diamond inheritance, private

     combining with public     eliminating     for redefining virtual functions

     meaning

     vs. composition

inheritance, public

     combining with private     is-a relationship and 2nd

     meaning of     name hiding and

     virtual inheritance and inheritance, virtual 2nd

init function

initialization 2nd 3rd     assignment vs     built-in types 2nd

     const members

     const static members

     default, unintended

     in-class, of static const integral members

     local static objects

     non-local static objects

     objects 2nd

     reference members

     static members

     virtual base classes and

     vs. assignment 2nd 3rd

     with vs. without arguments

initialization order

     class members     importance of     non-local statics 2nd

inline functions     aaa] [See also inlining[inline functions]     address of

     as request to compiler

     debuggers and

     declaring

     headers and

     optimizing compilers and     recursion and     vs. #define 2nd     vs. macros, efficiency and inlining 2nd     constructors/destructors and 2nd     dynamic linking and

     Handle classes and     inheritance and 2nd

     Interface classes and     library design and     recompiling and

     relinking and

     suggested strategy for

     templates and

     time of     virtual functions and

input iterators input_iterator_tag

input_iterator_tag<Iter*> insomnia

instructions, reordering by compilers

integral types inter-language support, in Boost Interface classes 2nd

interfaces

     decoupling from implementations

     definition of

     design considerations 2nd

     explicit, signatures and

     implicit 2nd

         expressions and

     inheritance of 2nd

     new types and 2nd

     separating from implementations

     template parameters and 2nd

     undeclared

internationalization, library support for

invalid array index, undefined behavior andinvariants     NVI and

     over specialization is-a relationship 2nd is-implemented-in-terms-of 2nd 3rd

istream_iterators

iterator categories 2nd

iterator_category

iterators as handles

iterators, vs. const_iterators

 

Категории