error LNK2001:について – プログラミング – Home

通知
すべてクリア

[解決済] error LNK2001:について


きよ
 きよ
(@きよ)
ゲスト
結合: 22年前
投稿: 5
Topic starter  

ファイル名:Constants.cpp
------------------------------
#include stdafx.h

const int count = 100;
------------------------------

ファイル名:Constants.h
------------------------------
#pragma once

extern const int count;
------------------------------

ファイル名:hoge.cpp
------------------------------
#include stdafx.h
#include Constants.h

int main(int argc, char* argv[])
{
int a = count;
return 0;
}
------------------------------

上記のファイルをビルドすると下記のエラーが発生します。
hoge.obj : error LNK2001: 外部シンボル "int const count (?count@@3HB) は未解決で

Debug/hoge.exe : fatal error LNK1120: 外部参照 1 が未解決です。

エラーの原因は何なのでしょう?
ご教授ください。

Win98SE VC++6,0SP5 コンソールアプリ


引用未解決
トピックタグ
kazuma
 kazuma
(@kazuma)
ゲスト
結合: 24年前
投稿: 217
 

C++ の場合 const をつけるとデフォルトで内部リンケージになります。

Constants.cpp で、extern const int count = 100;
とすれば外部リンケージを持つようになります。

参考:
http://www.microsoft.com/japan/developer/library/default.asp?
URL=/japan/developer/library/vccore/_langref_constant_values.htm


返信引用
きよ
 きよ
(@きよ)
ゲスト
結合: 22年前
投稿: 5
Topic starter  

リンクエラーは発生しなくなりました。
ありがとうございました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました