Ценности - это сильно информационные объекты, для которых идентичность не значительна, т.е. основное внимание уделяется их государственному содержанию и любому поведению, организованному вокруг этого. Еще одной отличительной чертой значений является их граничность: обычно мелкозернистые объекты, представляющие простые понятия в системе, такие как количества.
Поскольку акцент значения заключается в его состоянии, а не в его идентификации, значения могут быть скопированы и, как правило, присвоены друг другу, требуя четкого или подразумеваемого определения конструктора общедоступных копий и оператора общественного назначения. Ценности обычно живут в других областях, т.е. в пределах объектов или блоков, а не на кучи. Таким образом, ценности обычно передаются и манипулируются непосредственно как переменные или через ссылки, но не как указатели, которые подчеркивают идентичность и косвенность.
Конкретные требования к типам значений, которые будут использоваться в любой:
- A ValueType is CopyConstructible [20.1.3].
- Деструктор для ValueType поддерживает гарантию безопасности без бросков.