Прототип функції - декларація функції в деяких мовах програмування, при якій вказується тільки її назва, тип та кількість і типи її аргументів. Таке оголошення необхідне і достатнє для компілятора при створенні правильного об'єктного коду.Необхідність у оголошенні прототипу функції перед визначенням її реального коду виникає при складних вкладених викликах однієї функції в іншій.
Для более простого восприятия объясню коротко
функция int my_function (int a) – прототип int my function (int);
функция void my_function(int a,int b,int c) – прототип void my_function(int,int,int);
Какой тип у функции – такой тип у прототипа
Какие типы у параметров функции – такие типы указываем в скобках прототипа
В языке программирования C++ термин Стандартная Библиотека означает коллекцию классов и функций, написанных набазовом языке.
#include директива указывает, что препроцессор обрабатывает содержимое указанного файла, если эти содержимое появились в программу источника в той точке, где отображается директива.
#include "path-spec" #include <path-spec>
Стандартные заголовочные файлы[править | править вики-текст]
Нижеперечисленные файлы содержат объявления Стандартной Библиотеки.
Контейнеры[править | править вики-текст]
- <bitset>
- Реализует специализированный класс контейнеров
std::bitset
— битовый массив. - <deque>
- Реализует шаблон класса контейнера
std::deque
— двусвязная очередь. - <list>
- Реализует шаблон класса контейнера
std::list
— двусвязный список. - <map>
- Реализует шаблоны классов контейнеров
std::map
иstd::multimap
— Ассоциативный массив и мультиотображение. - <queue>
- Реализует класс адаптер-контейнера
std::queue
— односторонняя очередь. - <set>
- Реализует шаблоны классов контейнеров
std::set
иstd::multiset
— сортированные ассоциативные контейнеры или множества. - <stack>
- Реализует класс адаптер-контейнера
std::stack
— стек. - <vector>
- Реализует шаблон класса контейнеров
std::vector
— динамический массив.
Общие[править | править вики-текст]
- <algorithm>
- Реализует определения многих алгоритмов для работы с контейнерами.
- <functional>
- Реализует несколько объект-функций, разработанных для работы со стандартными алгоритмами.
- <iterator>
- Реализует классы и шаблоны для работы с итераторами.
- <locale>
- Реализует классы и шаблоны для работы с локалями.
- <memory>
- Реализует инструменты управления памятью в C++, включая шаблон класса
std::auto_ptr
. - <stdexcept>
- Содержит стандартную обработку ошибок классов, например,
std::logic_error
иstd::runtime_error
, причем оба происходят изstd::exception
. - <utility>
- реализует шаблон класса
std::pair
для работы с парами (двучленными кортежами) объектов.
Строковые[править | править вики-текст]
- <string>
- Реализует стандартные строковые классы и шаблоны.
Поточные и ввода-вывода[править | править вики-текст]
- <fstream>
- Реализует инструменты для файлового ввода и вывода. Смотри fstream.
- <ios>
- Реализует несколько типов и функций, составляющих основу операций с iostreams.
- <iostream>
- Реализует основы ввода и вывода языка C++. Смотри iostream.
- <iosfwd>
- Реализует предварительные объявления нескольких шаблонов классов, связанных с вводом-выводом.
- <iomanip>
- Реализует инструменты для работы с форматированием вывода, например базу, используемую при форматировании целых и точных значений чисел с плавающей запятой.
- <istream>
- Реализует шаблон класса
std::istream
и других необходимых классов для ввода. - <ostream>
- Реализует шаблон класса
std::ostream
и других необходимых классов для вывода. - <sstream>
- Реализует шаблон класса
std::sstream
и других необходимых классов для работы со строками. - <streambuf>
Числовые[править | править вики-текст]
- <complex>
- Реализует шаблон класса
std::complex
и связанные функции для работы с комплексными числами. - <numeric>
- Реализует алгоритмы для числовой обработки
- <valarray>
- Реализует шаблон класса
std::valarray
— класс массивов, оптимизированный для числовой обработки.
Языковая поддержка[править | править вики-текст]
- <exception>
- Реализует несколько типов и функций, связанных с обработкой исключений, включая
std::exception
— базовый класс всех перехватов исключений в Стандартной Библиотеке. - <limits>
- реализует шаблон класса
std::numeric_limits
, используемый для описания свойств базовых числовых типов. - <new>
- Реализует операторы
new
иdelete
, а также другие функции и типы, составляющие основу управления памятью в C++. - <typeinfo>
- Реализует инструменты для работы с динамической идентификацией типа данных в C++.