Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > void в списке параметров


Автор: ShadowC 1.9.2011, 18:42
Здравствуйте,может вопрос и глупый,но все же,для чего в список параметров помещаютvoid xxx(void);,если функция типа void xxxx(); по дефолту не принимает никаких параметров?
P.S. сразу говорю я не ошибся и там именно void,а не void*

Автор: newbee 1.9.2011, 18:54
Старая школа сишников. Можешь не обращать внимания.

Автор: ShadowC 1.9.2011, 19:05
Цитата(newbee @ 1.9.2011,  18:54)
Старая школа сишников. Можешь не обращать внимания.

ну не знаю,сейчас перелистывал код который писали дейтлы в своих книгах и как раз наткнулся на это,решил почитать описание программы,но там вообще никак не прокоментированно это...


Автор: newbee 1.9.2011, 19:13
ShadowC, это просто как бы более наглядно для программиста показывает, что у функции нет параметров. AFAIK в старых-старых сях это было по стандарту, но тут я могу ошибаться.

Автор: SilverSoft 2.9.2011, 06:54
Такой оператор называется старомодным объявлением функции. Это было важно для старых версий C, так как это означает, что о параметрах нет никакой инфы, что касается компилятора, то для него это означает, что у функции может быть несколько параметрах или не иметь ни одного. 
Кроме того, человеку читающему ваш код, тоже наглядней видеть в void, а не пустоту )) Хотя это уже определяется стилем программирования. )

Автор: xvr 2.9.2011, 11:40
Цитата(SilverSoft @  2.9.2011,  06:54 Найти цитируемый пост)
Такой оператор называется старомодным объявлением функции.

Может сразу старинным?  smile 
В С++ разницы между void func(); и void func(void); нет. А в С есть -
первое это предварительное описание функции, но не прототип. Т.е. компилятор знает, что такая функция есть, но не знает, какие параметры она принимает. Что бы предварительное описание превратилось в прототип, список параметров обязан присутсвовать, даже если функция не принимает параметров вообще. Для этого и пишут void, т.е. список параметров есть, а самих параметров на самом деле нет  smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)