ВУЗ:
Составители:
Рубрика:
41
Заметим, что при получении размеров массивов, несмотря на то,
что имя массива является указателем, результатом операции
sizeof array,
где array – имя некоторого массива, является длина в байтах этого мас-
сива. Это свойство можно использовать для вычисления числа элемен-
тов в массиве:
const n = 20;
int array [n];
. . .
int num=sizeof array / sizeof(int) // num = = 20.
Результатом операции sizeof над ссылкой является длина типа, с
которым сопоставлена ссылка, т.е. sizeof( double & ) и sizeof( double )
эквивалентны.
7. Операции для работы с динамической памятью
7.1. Операция выделения памяти new
Часто выражение, содержащее операцию new, имеет следующий
вид:
указатель_на_тип_= new имя_типа (инициализатор)
Инициализатор – это необязательное инициализирующее выраже-
ние, которое может использоваться для всех типов, кроме массивов.
При выполнении оператора
int *ip = new int;
создаются 2 объекта: динамический безымянный объект и указатель на
него с именем ip, значением которого является адрес динамического
объекта. Можно создать и другой указатель на тот же динамический
объект:
int *other=ip;
ip
int
other
Если указателю ip присвоить другое значение, то можно потерять
доступ к динамическому объекту:
Страницы
- « первая
- ‹ предыдущая
- …
- 37
- 38
- 39
- 40
- 41
- …
- следующая ›
- последняя »