[ Web Proxy ]
URL:
Viewing: http://ru.cppreference.com/cpp/language/default_initialization [Back]  [Original]

cppreference.com
cppreference.com

cppreference.com

, .

T  ; (1)
new T (2)

:

1) , ;
2) new ;
3) .

:

  • T ( cv-) -POD ( C++11) , . ( ) ;
  • T , ;
  • ( ).

const- T, T .

T , T T ( ) ( C++11)

(, cv-) -POD ( ) , . POD ( C++11, ).

( C++11)
  • M T X ( ), X ,
  • T ,
( C++11)
  • M T , M X ( ), X ,
  • T , ,
  • T , ( ), ,
( C++11)

T .

, , , ( , ), :

  • ,
  • ,
  • (, cv-) unsigned char std::byte ( C++17),
  • .
int f(bool b)
{
    int x;               // OK:  x 
    int y = x;           //  
    unsigned char c;     // OK:  c 
    unsigned char d = c; // OK:  d 
    int e = d;           //  
    return b ? d : 0;    //  ,  b 
}

, , , ( ).

.

#include <string>

struct T1 { int mem; };

struct T2
{
    int mem;
    T2() { } // "mem"    
};

int n; //   ,   :
       // 1)    n 
       // 2)      ,  n  

int main()
{
    int n;            //  ,  
    std::string s;    // ,    ,  ""
                      // ( )
    std::string a[2]; // ,    , 
                      //  {"", ""}
//  int& r;           // : 
//  const int n;      // :   
//  const T1 t1;      // :       
    T1 t1;            // ,     
    const T2 t2;      //  ,   
                      //   
                      // t2.mem    (  )
}

C++:

CWG 178 C++98 ;
( new T()
)

CWG 253 C++98
,
CWG 616 C++98 lvalue rvalue
unsigned char
CWG 1787 C++98 unsigned char,
,


Web Proxy Viewer  |  New URL  |  Original Page