掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
変数の二重定義エラーを解決するのは? (ID:53401)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
そう! この問題はメーカ系のプログラマでもこーゆーヘッダを作る人多いので、是非汎用性の有るヘッダファイル作りを習慣付けして下さい。 原則として、CベースでもC++ベースでもヘッダでは「実体を持たせない」。これが大事です。 特に、Cベースの時は実体を持つソースに対応する外部宣言ヘッダを作ってやる様に心がけると良いと思います。(各ソースを纏めたヘッダを作ると汎用性が低下する)但し、グローバル変数の外部宣言は極力減らす方向で・・・(理想は関数の外部宣言のみ) それと参考までに、#ifndef とかで判断すべきは #define がされてるかどうかであって、変数が定義済みかどうかの制御は出来ません。 しかし、「ヘッダでは実体を持たない」って原則を守れば、変数の2重定義なんてエラーも無くなる筈です。 もっとも、#define も #ifndef をズラズラ書くのもソースが見づらいので、極力局所的にソース内記述をする様に心がけると良いと思います。(ヘッダでは本当に共通で用いるべきエイリアスを絞り込む)
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.