注釈は機械語に変換されないから注釈を1万行書いたとしても実行ファイルは1バイトも増えないんですか?
あと分割コンパイルをするとヘッダファイルをインクルードしたりエクスターン宣言とかをしますが
その場合は分割コンパイルをしなかった場合に比べて実行ファイルの容量が増えるのでしょうか?
実行ファイルの容量
Re:実行ファイルの容量
コメントは、コンパイルの前に、何も書かなかったものと解釈します。
したがって、コメントを1万行書いても1億行書いても、
できあがる実行ファイルの大きさは同じです。
したがって、コメントを1万行書いても1億行書いても、
できあがる実行ファイルの大きさは同じです。
Re:実行ファイルの容量
C言語の話だとして...
通常、注釈はどれだけ書いても実行ファイルのサイズには影響しません。
ただし、例外もあります。
1. CINTのようなインタープリタの場合
実行ファイル=ソースファイルですので、コメントのサイズがそのまま実行ファイルのサイズに反映されます。
2. コメントごとデバッグ情報を埋め込む場合
当然、コメントのサイズに比例して、ソースファイルのサイズが増加します。
分割コンパイルの場合、最適化がある程度制限されるので、実行ファイルのサイズに影響が出ます。
ただし、大きくなるか小さくなるかは状況次第です。
通常、注釈はどれだけ書いても実行ファイルのサイズには影響しません。
ただし、例外もあります。
1. CINTのようなインタープリタの場合
実行ファイル=ソースファイルですので、コメントのサイズがそのまま実行ファイルのサイズに反映されます。
2. コメントごとデバッグ情報を埋め込む場合
当然、コメントのサイズに比例して、ソースファイルのサイズが増加します。
分割コンパイルの場合、最適化がある程度制限されるので、実行ファイルのサイズに影響が出ます。
ただし、大きくなるか小さくなるかは状況次第です。
Re:実行ファイルの容量
> あ~小さくなる場合もあるんですか・・
念のため補足しておきます。
分割コンパイルした方が小さくなる場合ですが...
分割しないときに、最適化によってやや大きめの関数がインライン置換される場合が考えられます。
関数を外部定義にすればインライン置換されませんので、結果として実行ファイルは小さくなります。
念のため補足しておきます。
分割コンパイルした方が小さくなる場合ですが...
分割しないときに、最適化によってやや大きめの関数がインライン置換される場合が考えられます。
関数を外部定義にすればインライン置換されませんので、結果として実行ファイルは小さくなります。