Javaのアノテーションはクラスやインタフェース、メソッドやフィールド、パッケージなどに対してメタデータとして付加情報を記入する機能で、Java SE 5 で追加された。アノテーションはjava.lang.annotation.Annotationインタフェースを実装することで自作することもできる。 Microsoft Visual C++は、SAL注釈 (SAL annotation) と呼ばれる独自のソースコード注釈言語をサポートする[1]。SAL注釈は関数の引数や戻り値、構造体やクラスのメンバー変数(フィールド)といったC言語/C++の構文要素を修飾し、振る舞いや仕様を規定することで、これらを利用するコード上の誤りをコンパイラによって指摘することができるようになる。また、SAL注釈によって仕様が明確になり、公開されたヘッダーファイルそのものがAPIドキュメントとして利用できるようにな