Подтвердить что ты не робот

Зачем ставить void в params?

Какая причина для помещения пустоты внутри параметров?

Почему бы просто не оставить его пустым?

void createLevel(void);

void createLevel();
4b9b3361

Ответ 1

В скобках void находятся от C. В C функция с пустыми круглыми скобками может иметь любое количество параметров. В С++ это не имеет никакого значения.

Ответ 2

void в списках аргументов функции - реликт прошлого (C). В С++ вы должны оставить круглые скобки пустыми. Конечно, вы можете сохранить void, если это сделает вас счастливым.

В C, если вы объявляете функцию с пустыми скобками, значение состоит в том, что количество параметров неизвестно. void может использоваться, чтобы сделать его явным, чтобы не ожидалось никаких параметров.

Ответ 3

В С++ нет разницы.

Следующее относится только к C:

Собственно, согласно этот поток:

когда вы объявляете где-то функцию func(), это означает, что вы ничего не говорите об этом. С другой стороны func (void) означает NO ARGUMENTS

perfect_circle даже отправил замечательный пример кода, чтобы проиллюстрировать суть:

[email protected]:~$ cat code.c
#include <stdio.h>

int main()
{
        void func(void);
        func(3);
return 0;
}

void func(int a)
{
        printf("Nothing\n");
}
[email protected]:~$ gcc code.c
code.c: In function `main':
code.c:6: error: too many arguments to function `func'
[email protected]:~$ cat code1.c
#include <stdio.h>

int main()
{
        void func();
        func(3);
        return 0;
}

void func(int a)
{
        printf("Nothing\n");
}
[email protected]:~$ gcc code1.c
[email protected]:~$ ./a.out
Nothing
[email protected]:~$

Ответ 4

Нет никакой разницы, это просто к личным предпочтениям, например. чтобы показать, что при разработке функции вы не забыли дать параметры.

Ответ 5

Это предпочтительная вещь. Некоторые люди предпочитают делать вещи явными, а не скрытыми. Между ними нет никакой практической разницы.

Ответ 6

Поместите VOID VOID в параметры, если вы старая школа (я)