:: -- :: - ( ) . ($$R.2.5). - ($$R.9.3) this , . this - . :: , -- - . , --. , --. , . -- . :: , , , ($$R.3.2). , . , . - -, . -> ($$R.5.2.4): : -- -- ~- - , ($$R.7). -- ($$R.13.4), -- ($$R.12.3.2). ~- ($$R.12.4). -: -- :: --, :: ($$R.9.2), ($$R.10) -. , . , . ( ), . -::- -::~-, - . ($$R.12.1) ($$R.12.4) . , , N1::N2::N3::n, ($$R.9.7). R.5.2  . -: - - [ ] - ( - opt ) -- ( - opt ) - . - -> - ++ - -- -: - - , - R.5.2.1  , , . . " T", . "T". E1[E2] ( ) *((E1) + (E2)). * + $$R.5.3 $$R.5.7, $$R.8.2.4. R.5.2.2  , , , , . . ", T", " , T" " , T", "T". ($$R.8.4.3, $$R.12.8, $$r.12.1) . ($$R.4) ($$R.12.3) . , , , const ($$R.8.2.2). ($$R.7.1.6, $$R.2.5,$$R.2.5.4,$$R.8.2.4, $$R.12.2). , -. , ( $$R.8.2.6) ( ... $$R.8.2.5), ($$R.8.3). , , . , , , , (...). float, , double, char, short, , , int unsigned ($$R.4.1). , , . , , ($$R.12.2, $$R.12.8). , . . . . , . R.5.2.3  -- ($$R.7.1.6), - . , , ($$R.8.4, $$R.12.1). -- ($$R.7.1.6), (), . , , , , . ($$R.5.4). R.5.2.4  , (.) , . , . , . , (->) , . , . , , . E1->MOS , (*E1).MOS. , " " ($$R.9.2) ($$R.9.5). $$R.9. R.5.2.5  , ++, . . . ( ) 1. , (. $$R.5.7 $$R.5.17). -- ( 1) ++. R.5.3  . -: - ++ -- - - sizeof - sizeof ( - ) - - -: * & + - ! ~ * : , , , . " T", "T". & . -. , "T", " T". , const T const T*, volatile. "C" "T", " C T". T " T". ($$R.13) , ($R13.3). + . . . - . . 2**n, n . . ! , 1, 0, 0, 0. int. ~ , . . . R.5.3.1  ++ 1. . . , . ++x x+=1. ($$R.5.7) ($$R.5.17). -- 1 ++. R.5.3.2 sizeof sizeof . , , . sizeof , , , void . , sizeof, sizeof(char) 1. , , . , , . . . , n , n. sizeof , . size_t. <stddef.h> . R.5.3.3 new new - ($$R.8.1). , . -: ::opt new -new opt --new -new ::opt new -new opt ( - ) -new -new: ( - ) --new: -- -new opt -new: * --cv opt -new opt - :: --cv opt -new opt -new opt [ ] -new: ( - opt ) , new, , . new . , . , new int new int[1] int* , new int[i][10] int(*)[10]. ($$R.8.2.4), , , - ($$R.5.19) . , - ( , - - ($$R.5.19)). , operator new() . . . -- const, volatile, . new operator new() ($$R.12.5). T sizeof(T). -new . , new T operator new(sizeof(T)), new(2,f) T operator new(sizeof(T),2,f). -new , operator new() . new ( ), ::operator new(). new T, T::operator new(), ( , $$R.10.1.1), ::operator new(). ::new() , ::operator new(), T::operator new(). - -new. ($$R.12.1) , -new ( ) ( ). , , , .\ , new , , , ($$R.12.1). operator new, , . , operator new() ($$R.12). . new , ($$R.12.1). . , operator new() . 0 ( ), 0. operator new() . , operator new() 0. --new . new int (*[10])(); // error , .. (new int) (*[10])(); // error new , , new (int (*[10])()); 10 ( int). --new - -new. &, *, [] , , new int* i; // syntax error: parsed as `(new int*) i' // not s `(new int)*i' * , . R.5.3.4 delete delete , new. -: ::opt delete - ::opt delete [] - void. delete , new. delete , new -new, . , . , . , , , , . . delete ( $$12.4) , . , , delete operator delete ($$R.12.5). , ( ), ::operator delete(). T T::operator delete(), ( , $$R.10.1.1), ::operator delete(). ::delete , ::operator delete(), T::operator delete(). delete [ ] - . , . delete , delete []. R.5.4  ($$R.5.2.3) . -: - ( - ) - , --. . , ($$R.12.3), . , ($$R.4), () . , , . , , , , . . , ( ), , . . ( , ). (" "), , . , . . , . void* . B D, B , D B ($$R.4.6, $$.R10.1.1) B ($$R.10.1). , . , . , . (0) . , ($$R.10.1). X&, X*. . , , .. , . , . , , . , , . , , , , - , . . , , , (. $$R.4.6). , ($$R.12.3). , , , - , ($$R.4.8). , const, const. . , const, const. . , , const. . volatile volatile. , . volatile volatile. R.5.5 -- -- . -pm: - -pm .* - -pm ->* - .* , " T", , T , T . , . ->* , " T", , " T" " , T ". , . .* ->* , (), , (ptr_to_obj->*ptr_to_mfct)(10); -, ptr_to_mfct, , ptr_to_obj. .* ->* , . R.5.6  *, /, % . -: -pm - * -pm - / -pm - % -pm * / , % . ($$R.4.5) . * . / , % . / % 0, , (a/b)*b + a%b a. , , . R.5.7 + - , ($$R.4.5) . -: - + - - - - . + . . , , . , P , P+1 . , , , . - . , , +. . , , . 1. , ptrdiff_t <stddef.h>. , . P , (P+1) - 1 P. R.5.8  << >> . -: - - << - >> , . . , . E1<<E2 E1 ( ), E2 , . E1>>E2 E1, E2 . E1 , , - ( ), . R.5.9  , , a<b<c (a<b)<c, (a<b)&&(b<c). -: - - < - - > - - <= - - >= - . < ( ), > ( ), <= ( ) >= ( ) 0, , 1, . int. . . , , 0, , void* ( void*). ( ) , . . , , , , , , - ($$R.11.1), . - ($$R.11.1) , . () , . , , , . . R.5.10  -: - - == - - != - == () != ( ) , , . ( , a<b == c<d 1, a<b c<d .) , . ($$R.4.8). -, 0. R.5.11  -: - - & - , - . . R.5.12 ()  --: - -- ^ - , - . . R.5.13 ()  -: -- - | -- , - . . R.5.14  --: - -- && - && . 1, , - 0. & && , , , 0. , . int. . R.5.15  --: -- -- || -- || . 1, , - 0. | || , , , . , . int. . R.5.16  -: -- -- ? : - . . , , , , - . . , , , , , . -, 0, , . , , . void, void. T, T. , . . ( ). , . R.5.17  , . , . . - , . . -: - - - - -: = *= /= %= += -= >>= <<= &= ^= |= (=) , . , , , . ($$R.7.2) , , . , -, 0. , . T* const T*, ($$R.7.1.6). const T volatile T T volatile T (. $$R.8.4). , -, 0; . X ($$R.9) X::operator=() ($$R.13.4.3). X::operator=(), ($$R.12.8). , , X, public ($$R.4.6), X. B D , D B, public ($$R.10.1.1). " T" T, . E1 op= E2 E1 = E1 op (E2), E1 . += -= , () , $$R.5.7. , , . ($$R.8.4, $$R.12.1, $$R.12.6, $$R.12.8). R.5.18  . : - , - , , . . . , . , , ($$R.5.2.2) ($$R.8.4),