掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ヘッダファイルの書き方 (ID:51306)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
> #endif /* !defined(FUNC_HEADER_FILE_) あ……コメント閉じ忘れた。プリプロセッサに怒られる……というわけで,正しくは #endif /* !defined(FUNC_HEADER_FILE_) */ です。 でもって, > #define __FUNC_H__ は,未定義動作になることを知っておいた方がよいです。 ・下線からはじまって,下線または英大文字が続く識別子は全ての利用について予約 ・下線からはじまる識別子は,通常及びタグ名前空間でのファイルスコープ識別子として予約 というのが,ISO Cの言い分で, ・下線が二つ続いたり,下線からはじまって英大文字が続く識別子は実装のために全ての利用について予約 ・下線からはじまる識別子は,大域名前空間とstd名前空間で,実装が名前として使うために予約 というのがISO C++の言い分です。 ref) ISO/IEC 9899:1999 7.1.3 Reserved identifiers ref) JIS X3010:1993 7.1.3 予約済み識別子 ref) ISO/IEC 14882:1998 17.4.3.1.2 Global names なので,下線からはじまる識別子を使うと,場合によってはライブラリが利用している名前と重なって, エラーが起きる可能性があります。 ちなみに,私は関数にexternは付けませんね。 関数はinlineやstaticが付いていない限り外部結合ですから,付けるのは面倒なだけです。 全て「外部から呼び出せる」ことが前提で,「外部から呼び出せないもの」について, staticをつけたり(C)無名名前空間に入れたり(C++)します。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.