用語がよくわからないので、タイトルの言い方がわかりません。誰かが正しい用語で編集したい場合は、それで問題ありません。
私が何かをコーディングするとき、私はいつも時系列でそれを行います。メインを一番下に置いてから、上に上げます。ただし、最近、見たことのないことを行うチュートリアルを読みました。
上部のインクルードの後に、プログラマーは次のように書いています。
void inccell(int pos, int width, unsigned char *board);
void deccell(int pos, int width, unsigned char *board);
これは見たことがありません。私はいつもそうしますvoid myfunction (args) { stuff }
。このコンテキストで;
. この後、プログラムのさらに下で、関数の内容を定義します。
void inccell(int pos, int width, unsigned char *board)
{
++board[(pos-width)-1];
++board[ pos-width ];
++board[ pos-width +1];
++board[ pos-1 ];
++board[ pos+1 ];
++board[(pos+width)-1];
++board[ pos+width ];
++board[ pos+width+1 ];
return;
}
void deccell(int pos, int width, unsigned char *board)
{
--board[(pos-width)-1];
--board[ pos-width ];
--board[ pos-width +1];
--board[ pos-1 ];
--board[ pos+1 ];
--board[(pos+width)-1];
--board[ pos+width ];
--board[ pos+width+1 ];
return;
}
;
との関数の引数は{ }
同じなので、私が知る限り、「オーバーロード」することはありません。オーバーロードが使用されているため、異なる引数のセットを使用して関数を呼び出すことができます。つまりmyfunc(myint, mystr, mybool)
、myfunc(myint, mystr)
両方が有効になる可能性があります。
私はおそらくその声明で間違っています。
ただし、オーバーロードしていない場合、関数を一番上で宣言する理由、およびその目的は何かを誰かに説明してもらえますか?
ありがとう。