Шрифт:
Если бы компилятор пропустил такой код, то мы могли бы записать число
В редких ситуациях, когда нам требуется преобразовать переменную типа
Итак, мы очень близки к аппаратному обеспечению. Для программиста это не очень удобно. В нашем распоряжении лишь несколько примитивных операций и почти нет библиотечной поддержки. Однако нам необходимо знать, как реализованы высокоуровневые средства, такие как класс
17.3.1. Оператор sizeof
Как видим, можно применить оператор
ПОПРОБУЙТЕ
Выполните код, приведенный выше, и посмотрите на результаты. Затем расширьте этот пример для определения размера типов
Размер одного и того же типа в разных реализациях языка С++ не обязательно совпадает. В настоящее время выражение
Сколько памяти занимает объект класса vector? Попробуем выяснить.
Результат может выглядеть так:
Причины этого факта станут очевидными по мере чтения этой и следующей глав (а также раздела 19.2.1), но уже сейчас ясно, что оператор
17.4. Свободная память и указатели
Язык С++ делает эту свободную память (которую также называют кучей (heap)) доступной с помощью оператора
Указанная выше инструкция просит систему выполнения программы разместить четыре числа типа