Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Например, в следующей программе сначала объявляется
Структура sample, а затем функция f1() принимает параметр типа sample. // Передача функции структуры в качестве аргумента. #include <iostream> Using namespace std; // Определяем тип структуры. struct sample { Int a; Char ch; }; Void f1(sample parm); Int main() { struct sample arg; // Объявляем переменную arg типа sample. arg.a = 1000; arg.ch = 'x'; F1(arg); Return 0; } Void f1(sample parm) { cout << parm.a << " " << parm.ch << "\n"; } Здесь как аргумент arg в функции main(), так и параметр parm в функции f1() имеют Одинаковый тип. Поэтому аргумент arg можно передать функции f1(). Если бы типы этих Структур были различны, при компиляции программы было бы выдано сообщение об ошибке. При передаче функции структуры в качестве аргумента используется механизм передачи Параметров по значению. Это означает, что любые изменения, внесенные в содержимое Структуры в теле функции, которой она передана, не влияют на структуру, используемую в Качестве аргумента. Содержимое одной структуры можно присвоить другой, если обе эти структуры имеют Одинаковый тип. Например, следующая программа присваивает значение структурной переменной svar1 переменной svar2. // Демонстрация присваивания значений структур. struct stype { Int a, b; }; Int main() { Stype svar1, svar2; svar1.a = svar1.b = 10; svar2.a = svar2.b = 20; cout << "Структуры до присваивания.\n"; cout << "svar1: " << svar1.a << ' ' << svar1.b; cout <<'\n'; cout << "svar2: " << svar2.a << ' ' << svar2.b; cout <<"\n\n"; svar2 = svar1; // присваивание структур cout << "Структуры после присваивания.\n"; cout << "svar1: " << svar1.a << ' ' << svar1.b; cout << '\n'; cout << "svar2: " << svar2.a << ' ' << svar2.b 10 10 20 20 после 10 10 10 10 В C++ указатели на структуры можно использовать таким же способом, как и указатели на Date: 2016-07-25; view: 288; Нарушение авторских прав |