Хелпикс

Главная

Контакты

Случайная статья





Многомерный массив. Одномерный массив . Определение ссылки



19.Многомерный массив

Массив – послед-ть данных, к-ые снабжены одним и тем же именем и расположены послед-но в памяти. Многомер. мас. Языка С++ явл. мас, эл-ми к-го явл. мас. Тип_эл-ов имя_мас. [размер1][размер2] Кажд. Целое число размер i соотв-ет i-му измерению масс, кол-во измерений назыв. Его размерностью. Число индексов при обращении к эл-ту масс. должно совпадать с кол-ом измерений масс., в к-ой было указано при его описании. Многом. Масс. занимает в памяти непрерывную область и храниться как одном. Масс. Поэтому необходимо знать как располаг. В памяти эл-ты многом. М-ва: 1.самый правый индекс меняется быстрее всех остальных; 2.общее кол-во эл-ов масс = произ-ию всех его размерностей. Инициализация мног. М-ва: 1)как одномер м-в

float mas[2][3]={1,2,5,3,6,4};; 2)как двумер. М-в

float mas[2][3]={{1,2,5},{3,6,4}}; ;

3)частичная иниц-ия

Float mas[2][3]={{1,2},{3}};

 

18.Одномерный массив  

Массив – послед-ть данных, к-ые снабжены одним и тем же именем и расположены послед-но в памяти. М-вы могут быть образованы из эл-ов люб. типа. Различают одномер., двумер., многомер. м-вы. Одномер. М-в назыв. Вектором, двумер. – матрицей или табл.доступ к эл-ам м-ва осущ-ся 2 способами: 1)с пом. Индекса эл-та м-ва; 2)с пом. указ-ля.

Инициализация одном. М-ва: для храения данных часто исп-ся м-вы их необходимо инициал. Int days[12]= {31,28,31,30,31,30,31,31,30,31,30,31}; Если данных <, чем 12, то остальные будут инициал.0, если м-в глобальный

Иначе знач-я будут неопределенны. Можно не задавать кол-во эл-ов в м-ве, тогда компилятор пересчитывает их сам.

21.Определение ссылки

Сс – особый тип данных, являющийся скрытой формой указ-ля, к-ый при испол-и автоматически разыменовывается.Сс – др. имя или псевдоним объекта. При объявлении Сс перед ее именем ставиться &, а сама Сс должна быть проинициализи-рована именем того объекта на к-ый ссылается.type & имя_Сс = знач-е;. Объявление Сс без инициализации вызовет сообщение об ошибке. Передача пар-ров по Сс и по знач-ю: при передаче арг-ов по знач-ю компилятор создает временную копию объекта, размещает е в стековой памяти. Вызываемая ф-я оперирует именно с этой копией и не оказывает ни какого воздействия на объект оригинала.int func(int,int). Если необходимо, чтобы ф-я модифициро-вала объект-оригинал исп-ся передача пар-ров по Сс. При этом ф-и передается не сам объект, а его адрес. Т.о., все изменения в теле ф-и с арг-ми воздействуют на объект,т.к. ф-я может возвращать только единст-венное знач-е, то исп-ние передачи адреса объекта явл. весьма эф-ным способом работы с бол. числом объектов.В С++ передача по Сс осущ. 2 способами: исп-ие непосредственно Сс (double func(long&var1, int&var2);вызов func(var3, var4);) и исп-ие указ-ля(double func1(long*var1, int*var3); func1(&var4, &var5);)

 



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.