Пространства имён
Варианты
Действия

cv (<div class="t-tr-text">сопз волатильности<div class="t-tr-dropdown"><div><div><div class="t-tr-dropdown-arrow-border"></div><div class="t-tr-dropdown-arrow"></div><div class="t-tr-dropdown-h">Оригинал:</div><div class="t-tr-dropdown-orig">const-volatility</div><div class="t-tr-dropdown-notes">Текст был переведён автоматически через [http://translate.google.com Google Translate].<br/> Вы можете проверить и исправить перевод. Для инструкций кликните [http://en.cppreference.com/w/Cppreference:MachineTranslations сюда].</div></div></div></div></div>) specifiers

Материал из cppreference.com
< cpp‎ | language

 
 
Язык С++
Общие темы
Управление программой
Операторы условного выполнения
Операторы повторения
Операторы перехода
Функции
объявление функции
объявление лямбда-функции
шаблон функции
спецификатор inline
спецификаторы исключений (устарело)
спецификатор noexcept (C++11)
Исключения
Пространства имён
объявление пространства имён
псевдонимы пространства имён
Типы
спецификатор decltype (C++11)
Спецификаторы
cv-спецификаторы
спецификаторы продолжительности хранения
спецификатор constexpr (C++11)
спецификатор auto (C++11)
спецификатор alignas (C++11)
Инициализация
Литералы
Выражения
Утилиты
Типы
typedef-объявление
объявление псевдонима типа (C++11)
атрибуты (C++11)
Приведения типов
неявные преобразования
const_cast-преобразование
static_cast-преобразование
dynamic_cast-преобразование
reinterpret_cast-преобразование
C-подобное и функциональное приведение типов
Выделение памяти
Классы
Особые свойства классовых функций
Специальные функции-члены
Шаблоны
шаблон класса
шаблон функции
специализация шаблона
упакованные параметры (C++11)
Разное
Ассемблерные вставки
 
  • const - определяет, что тип является постоянным'.
    Оригинал:
    const - defines that the type is constant.
    Текст был переведён автоматически через Google Translate.
    Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
  • volatile - определяет, что типа летучего.
    Оригинал:
    volatile - defines that the type is volatile.
    Текст был переведён автоматически через Google Translate.
    Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
  • mutable - указывает, что член класса не влияет на внешнее видимое состояние класса. mutable членами могут быть изменены в постоянном классов, то есть' константность по существу игнорируется для конкретного члена.
    Оригинал:
    mutable - defines that a member of a class does not affect the externally visible state of the class. mutable members can be modified in constant classes, that is constness is essentially ignored for the particular member.
    Текст был переведён автоматически через Google Translate.
    Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

[править] Объяснение

Примечание: CV-квалификаторы </ B> и <b> резюме спецификаторов </ B> (список выше) не то же самое thing.
CV-квалификаторы свойства типа, тогда как CV-спецификаторы особенность языка определить CV-квалификаторы
Оригинал:
Note: <b>cv-qualifiers</b> and <b>cv-specifiers</b> (list above) are not the same thing.
The cv-qualifiers are properties of a type whereas cv-specifiers are language feature to define cv-qualifiers
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
</div>
Cv-отборочных определить два основных свойств типа: константность и' волатильности. CV-Qualifer может быть одна из следующих: 'const volatile', 'const', 'volatile' или 'none'. const определяет, что типа постоянные, volatile определяет, что типа летучего. Номера для постоянного и энергонезависимой типа имеет никаких дополнительных ограничений, в то время как постоянное и летучих вытекает следующее:
Оригинал:
Cv-qualifiers define two basic properties of a type: constness and volatility. A cv-qualifer can be one of the following: 'const volatile', 'const', 'volatile' or 'none'. const defines that a type is constant, volatile defines that the type is volatile. Non-constant and non-volatile type has no additional restrictions, whereas constant and volatile imply the following:
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
  • ' 'Постоянная - объект не должен быть изменен. Попытка сделать это приводит к неопределенному поведению. На большинстве компиляторов это ошибка времени компиляции.
    Оригинал:
    constant - the object shall not be modified. Attempt to do so results in undefined behavior. On most compilers it is compile-time error.
    Текст был переведён автоматически через Google Translate.
    Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
  • ' 'Летучего - объект может быть изменен с помощью не обнаруживается компилятором, и, таким образом некоторых оптимизаций компилятора должны быть отключены.
    Оригинал:
    volatile - the object can be modified by means not detectable by the compiler and thus some compiler optimizations must be disabled.
    Текст был переведён автоматически через Google Translate.
    Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
Существует частичное упорядочение CV-квалификаторы в порядке возрастания ограничений. Тип можно сказать, больше или' меньше резюме квалифицированных тогда:
Оригинал:
There is partial ordering of cv-qualifiers by the order of increasing restrictions. The type can be said more or less cv-qualified then:
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
  • ' Неквалифицированных <const
    Оригинал:
    unqualified < const
    Текст был переведён автоматически через Google Translate.
    Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
  • ' Неквалифицированных <volatile
    Оригинал:
    unqualified < volatile
    Текст был переведён автоматически через Google Translate.
    Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
  • ' Неквалифицированных <const volatile
    Оригинал:
    unqualified < const volatile
    Текст был переведён автоматически через Google Translate.
    Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
  • const < const volatile
  • volatile < const volatile
Любой CV-квалификаторы являются частью определения типа, следовательно, с разными типами CV-квалификация всегда разные типы. Поэтому литье, необходимое для соответствия типов при назначении переменных, вызов функций и т.д. Только приведение к более CV-квалифицированных типа делается автоматически, как часть <div class="t-tr-text"> неявные преобразования
Оригинал:
implicit conversions
Текст был переведён автоматически через [http://translate.google.com Google Translate].
Вы можете проверить и исправить перевод. Для инструкций кликните [http://en.cppreference.com/w/Cppreference:MachineTranslations сюда].
. В частности, следующие преобразования допускается
Оригинал:
Any cv-qualifiers are part of the type definition, hence types with different cv-qualifications are always different types. Therefore casting is needed to match types when assigning variables, calling functions, etc. Only casting to more cv-qualified type is done automatically as part of
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
  • ' Неквалифицированный тип может быть преобразован в const
    Оригинал:
    unqualified type can be converted to const
    Текст был переведён автоматически через Google Translate.
    Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
  • ' Неквалифицированный тип может быть преобразован в volatile
    Оригинал:
    unqualified type can be converted to volatile
    Текст был переведён автоматически через Google Translate.
    Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
  • ' Неквалифицированный тип может быть преобразован в const volatile
    Оригинал:
    unqualified type can be converted to const volatile
    Текст был переведён автоматически через Google Translate.
    Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
  • const типа могут быть преобразованы в const volatile
    Оригинал:
    const type can be converted to const volatile
    Текст был переведён автоматически через Google Translate.
    Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
  • volatile типа могут быть преобразованы в const volatile
    Оригинал:
    volatile type can be converted to const volatile
    Текст был переведён автоматически через Google Translate.
    Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
Чтобы преобразовать в CV-менее квалифицированных типа, const_cast должны использоваться.
Оригинал:
To convert to a less cv-qualified type, const_cast must be used.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

[править] Ключевые слова

const, volatile, mutable

[править] Пример