Ritchie: I added some things under some pressure from users that I don't think were done well. (snip) The "static" keyword is very strange, expressing both a storage lifetime and what the standard calls "linkage" (external visibility).
ユーザーの圧力が原因だそうで…。
> そういえばファイルスコープって、Cソースとオブジェクトファイル、どちらの"ファイル"なんだろう? インタビューの通り linkage 単位ですね。 Cソース単位にならない例として、 include されるファイルで static な変数を定義して include する側で参照したりできます。
Ritchie のインタビューがありました (スコア:2)
http://www.gotw.ca/publications/c_family_interview.htm [www.gotw.ca]
ユーザーの圧力が原因だそうで…。
> そういえばファイルスコープって、Cソースとオブジェクトファイル、どちらの"ファイル"なんだろう?
インタビューの通り linkage 単位ですね。
Cソース単位にならない例として、
include されるファイルで static な変数を定義して include する側で参照したりできます。
Re:Ritchie のインタビューがありました (スコア:2)
とりあえず、現在意味と単語の合っていない'static'が存在する理由は、ユーザによる過去互換への要望があったから、で間違いなさそうですね。
ソースのインタビュー、メンバが豪華で面白そう。