Então, enquanto eu faço algumas compilações longas, decidi fazer o teste geral do C ++ no ODesk e me deparei com essa pergunta.

Se não me engano, dada a redação (ou a falta dela), tudo isso pode ser verdade.
uma.
int Foo() { }
int Foo(int bar) { }
b.
Bem, return void;seria incorretamente semanticamente, mas as funções podem obviamente ter voidtipos de retorno.
void Foo() { }
c. Esta é a definição de funções embutidas, sim.
d. Sem entrar em muitos detalhes sobre o posicionamento dos seguintes elementos,
typedef void (*Func)(int);
Func functions[2];
void Foo(int bar) { }
void Bar(int foo) { }
functions[0] = &Foo;
functions[1] = &Bar;
Além disso, você sempre pode fazer isso usando lambdas e functors .
e
void Foo(int& bar)
{
++bar;
}
int foobar = 5;
Foo(foobar);
f.
int bar = 5;
int& GetBar()
{
return bar;
}
GetBar() = 6;
g.
int bar = 5;
int* GetBar()
{
return &bar;
}
(*GetBar()) = 5;
Não vejo onde esta pergunta tem respostas realmente falsas . Estou esquecendo de algo?
Escusado será dizer que fiquei sem tempo e falhei na coisa toda. Eu acho que sou um mau programador de C ++. :(