default type template parameters, 849

defaulted methods, classes, 1179–1180

defaults.cpp, 1077

deferencing operator (*), pointers, 171–172

#define directive, converting to standard C++

const instead of #define, 1327–1329

inline instead of #define, 1329–1330

defining

class member functions, 514–516

classes, 47

constructors, 525–526

functions, 306–309

defining declarations, 463

definitions, 463

delegating constructors, 1180–1181

delete operator, 163–164, 180–183, 400, 454, 476–477, 668

delete.cpp, 181

deleted methods, classes, 1179–1180

deque class templates, 1013

deque containers, 1013

deques, methods, 1278–1280

dequeue() method, 689

dereferencing (*) operator, 155–159

dereferencing operators, 1242–1246

derived classes, 405

constructors, 713–715

creating, 711–712

header files, 716

method definitions, 716

objects, creating, 717–718

relationships with base classes, 718–720

derived types, 116

design

bottom-up, 13

top-down, 12

The Design and Evolution of C++, 775, 1324

destructors, 524, 528–529, 538–539, 768

class, 524

virtual destructors, 737, 742–743, 776

difference_type type, 1250, 1273

directives

#define, converting to standard C++, 1327–1330

#ifndef, 451

#include, 33

using, 35–36, 59–60, 487–490

displacement vectors, 589

divide-and-conquer strategy, 360–361

divide.cpp, 100

division operator (/), 100–101

dma.cpp, 762–764

dma.h, 761–762

do while loops, 231–233

dominance, virtual base classes, 828–829

double data type, 50, 94–96

double-ended queue, 1013

dowhile.cpp, 232

downcasting, 738

Draw() function, 818

dribble() function, 414

dynamic storage duration, 454

dynamic arrays, 172–173

creating, 164–165

new operator, 164

sample program, 165–167

dynamic binding, 164, 172–173, 737–740

dynamic cast operator, 934, 941–943

dynamic cast operators, 934–939

dynamic memory, 476–479, 482

dynamic memory allocation, 757

auto_ptr class, 969, 973–975

derived class does use new, 758–760

derived class doesn’t use new, 757–758

example, 761–766

dma.cpp, 762–764

dma.h, 761–762

usedma.cpp, 765

dynamic structures, creating, 178–180

dynamic_cast operator, 943

dynamic variables, 454

E

early binding, 737

Effective C++: 50 Specific Ways to Improve Your Programs and Designs, Second Edition, 1324

Effective STL: 50 Specific Ways to Improve Your Use of the Standard Template Library, 1324

empty lines in strings, 130

empty() method, 1258, 1275

encapsulation, 512, 523

end() method, 981–984, 1251, 1275

end-of-file conditions, 237–241

endl manipulator, 37–38

enqueue() function, 890

entry-condition loops, 198

enum statement, 278–280

enum variables, 150–152

enumerators, 150–151

value ranges, 153

values, setting, 152

enum.cpp, 279

enumerations, 150–152

enumerators, 150–151

scoped, 1158

C++11, 551–552

value ranges, 153

values, setting, 152

enumerators, 150–151

as labels, 278–280

EOF (end-of-file) conditions, 237–241

eof() function, 238

eof() method, 296

eof() stream state methods, 1097–1102

eofbit stream state, 1097–1102

equal sign (=)

assignment operator (=), 644, 767–768, 772–775

custom definitions, 645–646

enumerator values, setting, 152

overloading, 652–658

potential problems, 645

strings, 133–134

Перейти на страницу:

Все книги серии Developer's Library

Похожие книги