Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
шпоры по программ(мои).doc
Скачиваний:
10
Добавлен:
01.03.2025
Размер:
969.73 Кб
Скачать

3.Классификация функций-членов класса

Классы — это структуры, которые содержат не только объявления данных, но и функций. Эти функции называются функциями-членами и определяют, что может делать класс. Другими словами, данные класса - это то, что класс знает, функции-члены (методы) класса - это то, что класс делает.

class TCounter {

long count; // данные класса

public:

long GetValue(); //функции-члены класса

void SetValue(long);

};

Для ограничения уровня доступа к данным и функциям-членам класса существуют ключевые слова private: (частный) и public: (общедоступный), задающие разделы доступа в классе. Каждый раздел в классе начинается с одного из приведенных слов. К частным членам класса имеют доступ только функции-члены данного. Доступ к общедоступным членам класса разрешен функциям-членам самого класса, производных классов и обычным пользователям класса.

Билет №24

1.Определение массива и его описание, индексирование массива.

Массивы - это группа элементов одинакового типа (double, float, int и т.п.). Объявление массива имеет два формата:

Спецификатор типа имя_массива [размер1]…[размерn]; /*это массив*/

Спецификатор-типа задает тип элементов объявляемого массива. В квадратных скобках задается количество элементов массива.

Элементы массива могут иметь любой тип, а тип индексов должен быть целым.

В языке СИ определены только одномерные массивы, но элементом массива может быть массив, поэтому можно определить и многомерные массивы. Они формализуются списком константных-выражений следующих за идентификатором массива, причем каждое константное-выражение заключается в свои квадратные скобки.

Пример объявление двумерного массива: int a[10][10];

Если с массивом связать указатель_на_элемент_массива, то с этой переменной можно работать как с обычной скалярной переменной

Память тип * имя_ptr; /*это указатель на тип*/

2.Переадресация ввода-вывода: понятия фильтра и конвейера.

Допустим, у нас имеется программа program, которая считывает день и номер месяца вашего рождения. Далее она печатает на экране сообщение:

Меня зовут Иванов Алексей. Я родился … … 1986 года.

День и месяц рождения можно вводить с клавиатуры, а можно поместить в файл (например, birth.dat) и запуская программу следующим образом:

program <birth.dat

получить тот же самый результат. Аналогично и с выводом в файл:

program >resultat.dat

При выполнении данной команды просьба ввести день и месяц рождения и результаты будут перенаправлены в файл resultat.dat.

Более того, можно перенаправлять ввод из файла и одновременно осуществлять вывод в файл:

program <birth.dat >resultat.dat

Поэтому для вывода нашей таблицы в файл необходимо набрать в командной строке:

program >tablitsa.dat

и вместо вывода на экран мы получим в текущем каталоге новый файл, в котором и будет наша таблица.

Очень удобно использовать перенаправление ввода, когда используется или отлаживается программа, в которой приходиться вводить большой объем данных (матрицы, элементы таблиц и т.д.),

иногда бывает необходимо организовать последовательность программ, выполняющих обработку информации, причем результат предыдущей программы является исходным для следующей . При этом промежуточные данные желательно никуда не записывать. Чтобы организовать такую обработку, используют знак '|' конвейера . Команды-"цепочки" такой обработки данных просто записываются в одну строку в порядке их вызова для обработки данных, и отделяются одна от другой знаком конвейера '|'.