最近Unityに入門したのでC#を書き始めた.そこでふと疑問に思った.
あれ,C#ってヘッダファイルなくね?
C#ってヘッダファイル無いけどどうやってファイル間の依存関係解決してるんだろ.usingディレクティブは名前空間に対して使ってるし.
という訳で少し調べてみた.
C++の話
- C++では基本的にヘッダファイル(.hや.hppファイル)に宣言を書き,ソースファイル(.cppや.ccファイル)に定義を書く.
- 外部のソースファイルを利用したい場合は対となるヘッダファイルをincludeする.
C#の話
C#の宣言はどこへ?
- ソースファイル上の定義が宣言を兼ねてるらしい.
依存関係はどうやって解決してるの?
- .NETが全部いい感じにやってくれる.
- プロジェクト内のソースファイルは全てincludeされてると考えて良さそう.