Тип void — это самый простой тип данных, который означает «отсутствие любого типа данных». Следовательно, переменные не могут быть типа void:
1 |
void value; // не будет работать, так как переменная не может иметь тип void |
Тип void, как правило, используется в трех случаях:
Использование №1: Указать, что функция не возвращает значение:
1 2 3 4 5 |
void writeValue(int x) // здесь void означает, что функция не возвращает никакое значение { std::cout << "The value of x is: " << x << std::endl; // Нет стейтмента return, так как тип функции - void } |
Использование №2: Указать, что функция не имеет никаких параметров (перешло из языка Cи):
1 2 3 4 5 6 |
int getValue(void) // здесь void означает, что функция не имеет никаких параметров { int x; std::cin >> x; return x; } |
Указание типа void как «никаких параметров» является пережитком, сохранившимся еще со времен языка Cи. Следующий код равнозначен и более предпочтителен для использования в языке C++:
1 2 3 4 5 6 |
int getValue() // пустые скобки означают то же, что и void { int x; std::cin >> x; return x; } |
Правило: Используйте пустой список параметров вместо void для указания отсутствия параметров в функции.
Использование №3: Ключевое слово void имеет третий (более продвинутый) способ использования в языке C++, который мы будем рассматривать на уроке №92.
Ключевое слово void имеет третий более продвинутый.
Этот void какой то эпический, уже 2й раз читаю что о нем мы узнаем дальше))) Мне кажется это пасхалка какая-то))
Если все-таки разделять понятия "процедура" и "функция" (понимаю, что в C понятие "процедура" отсутствует), то void станет более понятным.
Процедура — это просто последовательность действий.
Функция — это как бы "ответ на вопрос".
"Отсортируй переданный в параметрах массив" — процедура (void).
"Что получится, если перемножить переданные параметры?" — функция.
Все конспектировал)
довольно понятно,когда перечитываешь)
Какой же этот void задрочливый и сложен для понимания (для меня)((((((
Есть такое по началу….