Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Свойства последовательности




Последовательность

Сложные структуры данных

Перегрузка функций

Синтаксис языка программирования обычно требует, чтобы каждая функция имела уникальное имя в программе. В языке C++ появилась возможность иметь в программе несколько функций с одинаковыми именами, но, для правильного вызова функции необходимо, чтобы они отличались количеством и типом аргументов.

Это очень удобно, поскольку компилятор по типу аргументов и их количеству легко определит, какую функцию в данном случае необходимо вызвать. Операция замены функции при ее выполнении называется перегрузкой. Перегруженные функции не могут различаться по типу возвращаемого значения.

Можно привести пример создания функции "print", которая может выводить на экран значения данных различных типов:

#include <graphics.h>

#include <stdlib.h>

#include <stdio.h>

#include <conio.h>

// Перегруженные функции "print"

void print(int i) {printf("%i",i);}

void print(float x) {printf("%8.3f",x);}

void print(char *s) {printf("%s",s);}

void vk() {printf("\n");}

int main()

{ int a=-345; // Целое число

float pi=3.14159; // Вещественное число

char s[]="begin end"; // Символьная строка

print(a); vk();

print(pi); vk();

print(s); vk();

getch();

}

При исполнении компилятор сам выбирает ту или иную функцию "print" для правильного вывода данных.

Последовательность – набор упорядоченно расположенных однотипных элементов.

Свойства последовательности:

1. Последовательность обладает конечной, но неограниченной длиной.

2. Элемент последовательности может быть получен только один раз.

3. Все элементы последовательности имеют один и тот же тип.

4. Конец последовательности может быть определен:

– длиной последовательности;

– временем доступа к элементам последовательности;

– индикатором окончания последовательности;

– некоторым условием, зависящим от значений элементов.

5. Последовательность может быть пустой, т.е. не содержать ни одного элемента.

6. Последовательность S обозначена так:

 

В связи с неограниченной длиной последовательности, т.е. возможности большого количества элементов в ней, эти элементы невозможно хранить в памяти компьютера из-за его ограниченного объема. Поэтому обработка элементов последовательности ведется по мере получения очередного элемента. При обработке следует учитывать, что индикатор последовательности не должен обрабатываться.

При обработке элементов последовательности могут быть использованы буферные элементы для временного хранения одного или нескольких элементов. Количество буферных элементов не должно зависеть от длины последовательности.

Последовательность определяется как структура с последовательным доступом, т.е. время доступа к элементу зависит от его местонахождения в последовательности (доступ к нужному элементу возможен только после чтения предыдущих элементов).

 




Поделиться с друзьями:


Дата добавления: 2014-11-29; Просмотров: 423; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.