こんにちは。
VC++を使ってプログラムを作っているのですが、コンパイルは通るのですが、リンク時に以下のエラーメッセージが出ます。どなたか解決方法を教えてください。
(仮にプロジェクト名をPROJECTとします。)
リンク中...
PROJECT.obj : error LNK2005: "struct AA pAA" (?pAA@@3UAA@@A) はすでに PROJECT.obj で定義されています
Debug/PROJECT.exe : fatal error LNK1169: 1 つ以上の複数回定義されているシンボルが見つかりました
link.exe の実行エラー
開発ツール:VC++6.0 MFCを使用しています。
OS:Windows XP SP2
上記現象の発生した契機は、ヘッダファイル内で定義している構造体に構造体変数を加えたことによります。
【発生前】
・ヘッダ内
struct AA
{
};
・ソース内
AA pAA;
【発生後】
・ヘッダ内
struct AA
{
}pAA;
・ソース
(ソース内での構造体変数の宣言を削除)
以上で、どなたか心当たりのある方はご教授をお願いいたします。
No.2
- 回答日時:
No.1さんに補足です。
ヘッダファイルの先頭と最後に、複数インクルード防止マクロを定義しておきましょう。
※ヘッダファイルの先頭
#if !defined(HOGEHOGE_XXXXXXX)
#define HOGEHOGE_XXXXXXX
※ヘッダファイルの最後
#endif
※HOGEHOGE_XXXXXXX は、任意でユニークな文字列。
ご回答ありがとうございます。
お礼が遅くなり、申し訳ありません。
おお~そういうばそのような方法もありましたね!
すっかり忘れていました・・・
どうもありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C言語初心者 構造体 課題について 1 2023/03/10 19:30
- C言語・C++・C# C言語初心者 構造体 課題について 2 2023/03/10 19:48
- Access(アクセス) アクセス where句を使用して複数条件抽出をするには 2 2022/08/29 13:24
- お酒・アルコール 断酒団体AAについての質問です 今年に入ってからお酒をやめました 自助グループとして「断酒会」と「A 3 2023/05/22 11:39
- C言語・C++・C# プログラムが書けません。 4 2023/01/22 22:57
- IT・エンジニアリング IT開発、ソフトウェア開発、アプリ開発において、要件定義は受注の前か、後か? 見積額に含むか否か? 1 2022/06/20 19:02
- その他(プログラミング・Web制作) pythonのmap、結果の利用は1度だけ? 5 2022/06/11 12:33
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- 日本語 複合名詞(造語)について教えて欲しいです 2 2022/05/22 17:14
- ネットワーク 通信量を見たい 3 2023/03/01 07:47
このQ&Aを見た人はこんなQ&Aも見ています
-
新NISA制度は今までと何が変わる?非課税枠の拡大や投資対象の変更などを解説!
少額から投資を行う人のための非課税制度であるNISAが、2024年に改正される。おすすめの銘柄や投資額の目安について教えてもらった。
-
多重定義が起きている?--lnk2005エラー:VC++
C言語・C++・C#
-
関数の実体定義にヘッダファイルの2重定義防止方法が効かない?
C言語・C++・C#
-
<unistd.h>をVisualStudioでつかえるようにする
C言語・C++・C#
-
-
4
std::stringからLPCWSTR型への変換
C言語・C++・C#
-
5
画面を強制的に再描画させる方法
C言語・C++・C#
-
6
既定のコンストラクタがない?
C言語・C++・C#
-
7
構文エラー;"が型の前にありませんとは、どうしたら解決できるのですか。"
C言語・C++・C#
-
8
名前空間でビルドエラー(LNK2005)
C言語・C++・C#
-
9
#include <Windows.h>というヘッダファイルについて
C言語・C++・C#
-
10
どんなプログラムを書いても指定されたファイルが見つかりません。と出てきます。どうやったら解決しますか
C言語・C++・C#
-
11
ダイアログ表示時にチェックボックスにチェックされている状態にするには?
C言語・C++・C#
-
12
CStringのFindで文字列検索を行いたいのですが
C言語・C++・C#
-
13
2重定義って??
C言語・C++・C#
-
14
他の.CPPファイルに定義した関数を呼び出す方法について
C言語・C++・C#
-
15
#define _CRT_SECURE_NO_WARNINGS について
C言語・C++・C#
-
16
CStringからchar*への型変換について教えてください。
C言語・C++・C#
-
17
char*を初期化したいのですが
C言語・C++・C#
-
18
ボタンの表示の色、フォントを変更したい
C言語・C++・C#
-
19
C++にてtemplateで受け取った任意の型の変数が何型であるかを判定したい
C言語・C++・C#
-
20
配列の要素数に変数を入れたいときには
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAを何回も作り直して、容量が...
-
1 つ以上の複数回定義されてい...
-
” OS ビルド ” の意味が分か...
-
<math.h>があるのにsqrtが・...
-
「fatal error C1189」を回避す...
-
必要なDBG ファイルが見つから...
-
Makefile作成時の拡張子.oとは?
-
動的な変数名のつけ方について
-
Microsoft の Visual C++ サン...
-
外部シンボル "_main"は未解決です
-
クリティカルエラー Expressio...
-
2G以上のファイル操作
-
Borland C Builder とOpenCVを...
-
C++/CLIで、アンマネージC++のD...
-
アプリケーションの配布
-
VC60とVC70の違いは?
-
VMwareのLinuxでコンパイルでき...
-
複数のサブディレクトリを一緒...
-
コンパイルエラー
-
NOTIFYICONDATAについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAを何回も作り直して、容量が...
-
<math.h>があるのにsqrtが・...
-
” OS ビルド ” の意味が分か...
-
Makefile作成時の拡張子.oとは?
-
「fatal error C1189」を回避す...
-
1 つ以上の複数回定義されてい...
-
ILSpyで、デコンパイルできない。
-
C言語でヘッダファイルにグロー...
-
エクセルVBAではRound...
-
セミコロンについて
-
マクロ コンパイルがグレーバック
-
C++コンパイル時に『 C1083: in...
-
外部シンボル "_main"は未解決です
-
PRO*C コンパイルエラー
-
コンパイルエラー:ユーザ定義...
-
クリティカルエラー Expressio...
-
ビルドとリビルドの違いを教え...
-
RPGでプログラムからソースファ...
-
戻り値について
-
C++のhppファイルをCでinclude
おすすめ情報