Использование функций. - раздел Программирование, Основные понятия языка C++. Переменные, константы Функция По Своей Сути — Это Подпрограмма, Которая Может Манипулировать Данным...
Функция по своей сути — это подпрограмма, которая может манипулировать данными и возвращать некоторое значение. Каждая программа имеет хотя бы дону программу — main().
Каждая функция обладает собственным именем, и если это имя встречается в программе, то управление переходит к телу этой функции. Этот процесс называют вызовом функции. По возвращению из функции выполнение программы продолжается со следующего за именем функции оператора.
Различают два вида функций : встроенные и определённые пользователем. Встроенные функции являются составной частью пакета компилятора и предоставляются фирмой-изготовителем. Нестандартные функции разрабатываются программистом.
Функции возвращают либо некоторое реальное значение либо некоторое значение типа void (то есть «ничего»).
Функция так же может принимать некоторые значения, то есть иметь параметры.
В общем виде объявление функции может иметь вид:
Все темы данного раздела:
Процесс создания программы.
Для программы, написанной под WINDOWS 9x или в оболочке для WINDOWS 9x необходимо создать сначала файл проекта (.ide) к которому будут присоединены все остальные файлы (кроме указанных добавляются
Return 0
}
В стороке 1 подключается файл .. в текущий. Сигнал # служит для препроцессора. С этими строками препроцессор работает до того как начнётся компиляция про
Переменные и константы.
Переменные используются для хранения информации. Переменная — это ячейка памяти в компьютере в котором может храниться некоторое значение. Размер этой ячейки зависит от типа переменной. Различные т
Выражение 4;
}
Логические операторы.
Оператор
Символ
А
С
Результат
И
&a
Int fistNumb,secondNumb;
cout <<"Введите два числаnПервое:";
cin >>fistNumb;
cout <<"nВторое:";
ci
Return 0;
}
Та же программа написанная при помощи while().
Для того чтобы перейти на следующую итерацию цикла используется оператор continue
Switch(number)
{
case 0: cout<<" Очень мало извините!n";break;
case 2: cout<<"Уже лучше.n";
ca
Указатели.
Указатель — это переменная, в которой записан адрес ячейки памяти.
Так как указатель это обычная переменная, то имена им даются такие же, иногда программисты добавляют к ним букву «р». (pN
Int MyFunction(int some Value, float SameFloat);
Вызов функции имеет вид:
Rezult=MyFunction(12.4,4.7);
Использование функций требует что бы функция была сначала объявлена, а потом определена. Объявление функции
Макрофункции
Иногда бывает полезно создать макроопределение с аргументами - макрофункцию. Макрофункция применяется там, где требуется произвести не очень сложные вычисления, и хороши тем, что они выполняются дл
Перегрузка функций.
В языке С++ предусмотрена перегрузка функций, то есть функция с одним именем описана для разных типов параметров, с разными результатами, если написать функцию с разным результатом, но с одним спис
Возврат более одного результата.
В языке С++ передача параметров в функцию может передаваться по адресу при помощи указателей. Делается это для возврата из функции нескольких значений, в этом случае связь с переменными, выступающи
Return 0;
}
Та же самая программа написана при помощи ссылок, найдите отличия
#include<iostream.h>
#include<conio.h>
Массивы.
Массивы представляют собой последовательность данных одного типа, размещённых друг за другом в памяти компьютера. Каждая единица данных называется элементом массива.
Описание массива:
Int main(void)
{
int *ArreyF,*ArreyS,*ArreyRez,n,m,size=100;
cout <<"Введите размерность массиваn по строкам:";
Создание новых типов
Тип переменной определяет: её размер в памяти, тип данных, которые она может хранить и операции, которые можно производить с этой переменной.
Тип данных является категорией. В языке С++ пр
Long num;
};
Данный шаблон описывает структуру с именем типа структуры sprav, состоящую из двух компонентов: строки fio и целой переменной num типа long. Имя типа структуры sprav не
Gets(tel1.fio);
puts("введите его номер-");
scanf("%ld",&tel1.num);
tel2=tel1; /* нельзя так же сравнивать структуры */
Clrscr();
/* Выделение памяти для структуры */
tel1=(struct sprav *)malloc(sizeof(struct sprav));
tel2=(struct sprav *)malloc(sizeof(struct sprav))
Gets(fio_tek);
/* поиск структуры по фамилии абонента */
for(i=0; i<5; i++)
if(!strcmp(fio_tek,tel[i].fio)) break;
if(i!=5)
Передача структуры в функцию
Непосредственный доступ к компонентам структуры - плохой стиль программирования. Все операции, которые разрешены применительно к структуре, должны быть при этом реализованы в виде отдельных функций
COMPLEX x,y,z;
vvod(&x,2.5,6.7);
vvod(&y,6.89,8.45);
puts("Введены числа:");
out(&x);
Vaska.Meow();
Рекомендации:
1. используйте ключевое слово classдля объявления класса.
2. используйте оператор прямого доступа к членам класса и его методам.
3. не пута
Void Meow();
};
Согласно общей стратегии объектно-ориентированного программирования данные-члены класса должны быть закрытыми. Доступ следует открыть только к методам класса обесп
Return 0;
}
Любую переменную можно инициализировать, то есть присвоить ей значения, для инициализации объектов класса существуют специальные функции — конструкторы. Имя констру
ItsWedth(wedth),
ItsHeight(height) {}
Особенностью функции, которая имеет параметр по умолчанию является возможность ситуации: если параметр не указывается в скобках при вызове, то он имее
Функции — друзья.
Дружественная функция — это функция, которая не является методом класса, но имеет доступ к собственным и защищённым элементам класса. Функция не может быть другом без согласия класса, то есть она д
Double x,y,z;
public:
V_3d(const V_3d &v1); // конструктор -копировщик
V_3d(double x1=0,double y1=0,double z1=0):
// конс
Return c;
}
V_3d V_3d:: operator =(V_3d t)
{
x=t.x; y=t.y; z=t.z;
return *this;
Конструктор-копировщик.
В предложенной программе используются дополнительные возможности функций-членов — перегрузка, использование значений по умолчанию, использование нескольких конструкторов, в том числе и по умолчанию
Наследование.
Наследование обозначает такое отношение между классами, когда один класс использует структурную или функциональную часть одного или нескольких классов (соответственно простое и множественное наслед
Потоки.
Классы ввода-вывода iostream рассматривают информацию, как побитовый поток данных. Если данные выводятся на экран или заносятся в файл, то источник их как правила находится в прогр
Return 0;
} //ввод EOF — Ctrl+Z
cin.get() возвращает не объект типа iostream, а тип int. А если вы используете параметр
Return 0;
}
Результат работы программы:
введите фразу: кен!!gh#ghj##sdfdgfh
// кен$$ghghjsdfdgfh
Использование файлов для ввода- вывода информации.
Объекты, создаваемые для считывания или записи данных в файлы, называются ofstream. Они являются производными от уже рассмотренного класса iostream. Чтобы приступи
Строки.
В языке С++ не существует тип данных — строковые, этот тип инициализируется одномерным массивом элементов типа char.
Пример: char *Family=”Орешкина”; char Kreek[]
I=strlen(stroka);
cout<<"длина строки "<< stroka<< "="<<I << endl;
cout <<"_______"<< stroka<<"n&q
Виртуальные методы.
К механизму виртуальных функций обращаются в тех случаях, когда в класс необходимо поместить функцию, которая выполняется в наследуемых классах иначе, чем в классе базовом. Виртуальные функции необ
Как работают виртуальные функции.
Если в базовом классе функция объявлена как виртуальная , то её вызовы будут обрабатываться методом динамического связывания. Ключевое слово virtual предписывает компилятору генерировать дополнител
Собака, 2-- кошка, иначе-- млекопитающее, 0-- выход. 0
Так как часто используется указатель на объект базового класса, хотелось бы иметь возможность удалять этот объект, к какому бы классу он не принадлежал, на самом деле, следовательно необходимо испо
Статические переменные-члены и статические функции-члены.
До этого момента предполагалось, что все данные находящиеся в классе должны принадлежать объектам класса, причём какое-либо данное должно было принадлежать конкретному объекту класса. Но иногда воз
Удалим кота, возраст которого 1 года
рекомендуется:
§ Применять статические переменные для совместного использования данных несколькими объектами класса.
§ Необходимо ограничить доступ к статическим ,объявив их
Void Info()
{
cout<< "у нас живёт "<< Cat::GetHayMeny()<<" кота .n";
}
Вызов статических
Void main(void)
{
int i=3;
float f=3.12;
double x=3.1e2;
cout<<"//целое "<<cub(
Связные списки и другие структуры.
Для работы с массивом необходимо знать его размерность, хотя бы в начале работы программы. Если это данное не известно то можно либо сильно увеличить резервируемую память, либо рисковать ограниченн
Class Node
{public:
Node(){}
virtual ~Node(){}
virtual Node* Insert(Data* theData)=0;
virtual vo
Return dataN;
}
class HeadNode:public Node
{public:
HeadNode(){myNext=new TailNode;};
~HeadNode(){d
Новости и инфо для студентов