
test.hにて
class test{
public:
static int test[8][8];
static int test1[8];
public:
static int set_test();
}
を定義して
test.cppで
void test(){
test[0][0] = 0;
test1[0] = 0;
}
とすると
LNK1120: 外部参照 1 が未解決です。
LNK2001外部シンボルが未解決です。
となってしまいます。
環境は
Visual Studio 2005 C++です。
No.3
- 回答日時:
なんかこれだけ見るとむちゃくちゃなんですけど、
本当にこんなソースなんですか?
リンクに行く前にコンパイルエラーになると思うんだけど。
c:\tmp\test.h(3) : error C2380: 前の型 'test' (コンストラクタが戻り値を
返すか、またはクラス名を再定義しています。)
c:\tmp\test.h(3) : error C3400: '文字列': 予期しないトークンや文字が属性
ブロックに見つかりました。
c:\tmp\test.h(3) : error C3400: '文字列': 予期しないトークンや文字が属性
ブロックに見つかりました。
c:\tmp\test.h(3) : error C2059: 構文エラー : ';'
c:\tmp\test.h(3) : error C2238: ';' の前に無効なトークンがあります。
test.cpp(3) : error C2628: 'test' の後に 'void' を記述するのは正しくありません (
';' で区切られていない可能性があります)。
test.cpp(4) : error C2109: 配列または、ポインタでない変数に添字が使われました。
test.cpp(5) : error C2065: 'test1' : 定義されていない識別子です。
この回答への補足
すみません。
書き間違っていました。
test.h
class TEST{
public:
static int test[8][8];
static int test1[2];
public:
void set_test();
};
test.cpp
#include "test.h"
void TEST::set_test(){
test[0][0] = 0;
test1[0] = 0;
}
でした。
すみませんでした。
void TEST::set_test(){
TEST::test[0][0] = 0;
TEST::test1[0] = 0;
}
No.2
- 回答日時:
void test()
{
test[0][0] = 0;
test1[0] = 0;
}
ではグローバルネームスペースのtest及びtest1を参照することになってしまいます。
testクラスの中身を参照したいのでしたら test::test1 などのようにネームスペースの指定を行わないとだめでしょう。
そもそも論として、クラスと同じ名前の配列や、クラスと同じ名前の関数は定義できないと思いますが……。
この回答への補足
すみません。
書き間違っていました。
test.h
class TEST{
public:
static int test[8][8];
static int test1[2];
public:
void set_test();
};
test.cpp
#include "test.h"
void TEST::set_test(){
test[0][0] = 0;
test1[0] = 0;
}
でした。
すみませんでした。
void TEST::set_test(){
TEST::test[0][0] = 0;
TEST::test1[0] = 0;
}
ネームスペースの指定をしても同じエラーがでてしまっています。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
classの再定義エラーについて
-
Smarty変数の値をJavascript変...
-
[CakePHP] Paginatorのリンクが変
-
Excel VBA:特定の文字列以降(...
-
findstrのerrorlevel
-
wordの差し込み印刷で文字...
-
shシェルスクリプト 空白行の...
-
「取得先」という表現について
-
EXCEL、マクロ-改ページ行番号...
-
【C#】DataGridViewの最大列数...
-
XMLのタグの有無をPHPで判定し...
-
VB.NETでボリュームを取得・設...
-
ps3で久しぶりにCDの音楽情報取...
-
ExcelVBAで、FileSystemObject...
-
複数ページでセッションを使わ...
-
Google scholarがひらけなくな...
-
開始と終了を指定して、その間...
-
webサイトの参考資料:サイト名 ...
-
(Win32)ファイルパスから物理ド...
-
コンビニで住民票を取得した場...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA コレクションに2次元配列...
-
次のhtml・cssでspan内の文字を...
-
vb作成したらでbeep音が鳴りま...
-
PHPの名前空間インポートについて
-
どういうプログラムを関数化を...
-
python の import エラー Modul...
-
fwriteで改行出来ない
-
エラーの理由が分りません。Pri...
-
サブネットマスクを用いたIP制...
-
VB.NETからVBAマクロ(引数)を呼...
-
タグの追加
-
Let's Encryptで自動更新がされ...
-
[CakePHP] Paginatorのリンクが変
-
PHPでの画像の形式の変換
-
classの再定義エラーについて
-
ExcelVBAで部分一致(*)をしたい
-
PHP、ヒアドキュメント内でのIF...
-
[C#]Arraylistに追加した構造体...
-
Smarty変数の値をJavascript変...
-
number_formatが勝手に四捨五入
おすすめ情報