Форум программистов, компьютерный форум CyberForum.ru

Функции.Зачем нужны void функции? - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 46, средняя оценка - 4.70
VD17
 Аватар для VD17
0 / 0 / 0
Регистрация: 06.02.2013
Сообщений: 17
22.02.2013, 14:50     Функции.Зачем нужны void функции? #1
Здравствуйте люди.Я учусь по книге C++ для чайников.Там объясняют многое про функции.Одного не могу понять.Зачем нужны void функции с аргументом void раз они ничего не возвращают и им нельзя ничего передать.Какая польза от них?
Если кто нибудь покажет на примере буду благодарен.Спасибо всем.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
22.02.2013, 15:04     Функции.Зачем нужны void функции? #2
VD17, А с чего бы функции, возвращающие void с параметром void бесполезны? Мало-ли для чего они могут быть.
Что есть на примере?

Ну к примеру можно так...

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
 
struct ValueAdder
{
   ValueAdder(int i) : value(i) { }
   void run()
   {
      value += 5;
   }
   int get() const { return value; }
private:
   int value;
};
 
int main()
{
   ValueAdder val(5);
   val.run();
   std::cout << val.get() << std::endl;
}
http://liveworkspace.org/code/1RwQA1$1
daslex
1084 / 494 / 101
Регистрация: 02.08.2011
Сообщений: 2,408
22.02.2013, 15:04     Функции.Зачем нужны void функции? #3
пример
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
void prnt()
{
    std::cout<<"Функия Войд\n"; 
}
 
int main()
{
    int x=100;
    prnt();
    std::cin.get();
    return 0;
    
}
=================================
Функция не всегда что-то считает. Если она ничего не считает, а только что-то, например, показывает или заполняет глобальные какие-то объекты, то какая разница что возвращать? В таком случае можно использовать такую функцию
gray_fox
What a waste!
 Аватар для gray_fox
1244 / 1127 / 53
Регистрация: 21.04.2012
Сообщений: 2,350
Завершенные тесты: 3
22.02.2013, 15:09     Функции.Зачем нужны void функции? #4
Цитата Сообщение от VD17 Посмотреть сообщение
функции с аргументом void
В С (по крайней мере до С99) void в качестве параметра функции было единственным способом указать компилятору, что функция не принимает аргументов. В С++ разницы между (void) и () нет никакой.
daslex
22.02.2013, 15:20
  #5

Не по теме:

ForEveR, человек, который читает книгу для чайников на страницах о том, что такое функции, едва ли поймет пример со структурой, да еще и с полем private

ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
22.02.2013, 15:32     Функции.Зачем нужны void функции? #6
daslex, Захочет - погуглит и поймет. Некий сферический пример в вакууме с использованием глобальной переменной мне приводить не хочется.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.02.2013, 15:37     Функции.Зачем нужны void функции?
Еще ссылки по теме:

Как вводить функции типа void C++
C++ Зачем в конце объявления виртуальной функции ноль: virtual void show()=0 ?
Зачем нужны дружественные функции C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
VD17
 Аватар для VD17
0 / 0 / 0
Регистрация: 06.02.2013
Сообщений: 17
22.02.2013, 15:37  [ТС]     Функции.Зачем нужны void функции? #7
Спасибо ребята.
Yandex
Объявления
22.02.2013, 15:37     Функции.Зачем нужны void функции?
Ответ Создать тему
Опции темы

Текущее время: 11:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru