そこで、次の宣言を含む String ヘッダー ファイルを見ていました。
string(const char*);
変数名がない場合、入力パラメーターを使用するにはどうすればよいですか? また、変数名を書かないことに意味はありますか。同じ型の 2 つのパラメーターを受け取るメソッドがあったとしたら、めちゃくちゃになると思います。しかし、主な問題は、変数名なしでこの入力パラメーターにアクセスするにはどうすればよいかということです。ありがとう!
そこで、次の宣言を含む String ヘッダー ファイルを見ていました。
string(const char*);
変数名がない場合、入力パラメーターを使用するにはどうすればよいですか? また、変数名を書かないことに意味はありますか。同じ型の 2 つのパラメーターを受け取るメソッドがあったとしたら、めちゃくちゃになると思います。しかし、主な問題は、変数名なしでこの入力パラメーターにアクセスするにはどうすればよいかということです。ありがとう!
コンパイラに関する限り、関数が宣言されているときにパラメータの実際の名前を知る必要はありません。必要なのは、関数のシグネチャ (戻り値の型、名前、パラメーターの型) だけです。
関数を定義するとき、つまりソースファイルでパラメータ名のみが必要です。
// foo.h
void foo(const char*);
// foo.c
#include "foo.h"
void foo(const char * c) {
//OK
}
void bar(const char*) {
//Indeed, we have no way to access the parameter
}
これらの署名が一致する限り、すべてが正常に機能します。ただし、これがヘッダー ファイルである場合は、通常、宣言にパラメーター名を含めることをお勧めします。これは有用なドキュメントです。