2012-02-05 10 views
0

私は私のプロジェクトで次のコードを持っている:のVisual Studio 2010:奇妙なリンカエラー

SomeCode.h:

#pragma once 

#include "defines.h" 

void Function1(int *param1, float *param2, int count); 
void Function2(int *param1, float *param2); 
void Function3(int *param1, float *param2); 

SomeCode.cpp:

#include "SomeCode.h" 

void Function1(int *param1, float *param2, int count) 
{ 
//implementation 
} 

void Function2(int *param1, float *param2) 
{ 
//implementation 
} 

void Function3(int *param1, float *param2) 
{ 
//implementation 
} 

main.cppに:

#include "SomeCode.h" 

int main() 
{ 
// some Function1, Function2, Function3 usage 
} 

上記のファイルはすべて同じ倍数ですエル。

ソリューションは正常にコンパイルされますが、Function1、Function2、Function3未解決の外部エラーが発生します。清掃や建物の再建は役に立たない。しかし不思議な回避策は、以下のことがうまく構築されていることを確認するために:) 1)SomeCode.cpp 2内のすべての行をコメントソリューションを構築して取得同じリンカエラー 3)ライン 4)が再び

を構築するコメントを解除しました

プロジェクトで何かを変更したとき(新しいファイルを追加し、既存のものを一度変更する)、時々同じ問題が発生します。しかし、これは定期的に起こるわけではないので、問題がいつ現れるか正確には分かりません。

これらの問題の原因は何ですか?

+0

新しいオブジェクトファイルをリンクステップで追加しましたか? – user973572

+0

@ user973572あなたの質問を完全に理解しているかどうかはわかりません。別のライブラリに依存しています。このライブラリは、別のプロジェクトのソースコードから構築されています。私はこのライブラリを結びつける前に、私の問題が起きたかどうかは正確には言えません。しかし、私は間違いなくライブラリにフックしても問題は解決しないと言えるでしょう。 –

答えて

0

あなたはsomecode.cppで

#include "somecode.h

を追加しようとするのですか?

+0

ああ...確かに私は!私は私の質問を編集しました。それを指摘してくれてありがとう! –