Reprezentacja wartości nietrywialnie typów do kopiowania
Intryguje mnie następujący akapit normy (§ 3.9 / 4ISO / IEC 14882: 2011 (E)):
Thereprezentacja obiektu obiektu typuT
jest sekwencjąN unsigned char
obiekty zajmowane przez obiekt typuT
, gdzieN równa sięsizeof(T)
. Thereprezentacja wartości obiektu to zestaw bitów, które przechowują wartość typuT
. W przypadku trywialnie kopiowanych typów reprezentacja wartości jest zbiorem bitów w reprezentacji obiektu, która określa awartość, który jest jednym dyskretnym elementem zestawu wartości zdefiniowanych przez implementację.42
Rozumiem, żereprezentacja obiektu ireprezentacja wartości są różne, aby część reprezentacji obiektu nie brała udziału w wartości obiektu (na przykład dopełnienie). Nie do końca rozumiem jednak o trywialnie kopiowalnych typach. Czy nietrywialne typy do kopiowania nie mają wartości? Czy część reprezentacji wartości nietrywialnie kopiowalnego typu istnieje poza jego reprezentacją obiektu?
Uwaga 42 wyjaśnia:
Intencją jest, aby model pamięci C ++ był zgodny z modelem języka programowania C. / ISO 9899 C.
Nadal nie rozumiem, dlaczego poprzednia instrukcja jest przeznaczona tylko dla trywialnie kopiowalnych typów. Jakie to ma znaczenie?