C#はCやJavaのパクリ文化なので、CやJavaのコードみたいに、以下のようなソースコードを書いている人も多いだろう。
/*******************************
MyBlahClass.cs
作成者: わたし
バージョン: 0.1
備考: もうイヤ
*******************************/
using System;
…
このコメントは、usingディレクティブを修飾するものとみなされるが、ドキュメンテーション コメントはユーザー定義の型あるいはメンバーに対してのみ許容される。これはECMA-334違反なので、こういうコードを書いてはいけない1。詳しくはC#仕様書(3rd Edition)のAnnex Eを参照。
こういうコードを許容してしまうドキュメントジェネレータ実装も存在するので、特に注意が必要だ。
Footnotes
-
注記しておくと、別にコンパイルエラーにしなければならないと言っているわけではない。mcsでも警告を出すのみである ↩