そのため、私はいくつかの長いコンパイルを行っている間に、ODeskでC ++の一般的なテストを受けることに決め、この質問に出会いました。
言葉遣い(またはその欠如)を考えると、私が間違っていなければ、これらすべてが真実である可能性があります。
a。
int Foo() { }
int Foo(int bar) { }
b。
まあ、return void;
意味的には間違っていますが、関数は明らかにvoid
戻り値の型を持つことができます。
void Foo() { }
c。これはインライン関数の定義です、はい。
d。 次の要素の配置について詳しく説明しなくても、
typedef void (*Func)(int);
Func functions[2];
void Foo(int bar) { }
void Bar(int foo) { }
functions[0] = &Foo;
functions[1] = &Bar;
さらに、ラムダとファンクターを使用していつでもこれを行うことができます。
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;
この質問に本当に間違った答えがあるのか見当たりません。何か不足していますか?
言うまでもなく、私は時間を使い果たし、すべてを失敗しました。私は悪いC ++プログラマだと思います。:(