2011-11-08 28 views
1

これで一晩中テーブルの上で頭を叩きました。はfstreamオブジェクトを宣言できませんか?それをポインタとして宣言できますか?

Error 5 error LNK2019: unresolved external symbol __imp___CrtDbgReportW referenced in function "public: char const & __thiscall std::_String_const_iterator<char,struct std::char_traits<char>,class std::allocator<char> >::operator*(void)const " ([email protected][email protected]@[email protected]@[email protected]@[email protected]@[email protected]@QBEABDXZ) C:\Users\Julz\Desktop\My Dropbox\3rdYear\2ndSemester\Games Prog\Game\DemocracyInvaders\Score.obj DemocracyInvaders 

が、私はそうのようなポインタとしてそれを宣言することができます。私は単にそのようなはifstreamオブジェクトを宣言しようとしている

....

ifstream inputStream; 

私はこのエラーを取得しています...

ifstream *inputStream; 

しかし、ファイルデータを読み込もうとすると頭がおかしくなります一部のハッキングされた修正を試す前に、基本的な宣言が機能していません。

私はSDLを使用して、次はヘッダにいくつかのファイルをダウン含まれてい...

#ifndef SDL_GRAPHICS_H //just a class I'm using to initialise my SDL stuff 
#define SDL_GRAPHICS_H 

#include <stdio.h> 
#include <iostream> 
#include <vector> 
#include <fstream> 
#include "SDL.h" 
#include "SDL_ttf.h" 
私はSDLはC++のものとバリエーションのすべての種類、何もない上に含まスワップしようとした

よ。 私のヘッダーのインクルードはすべて正しい順序であり、インクルードに問題があった場合、ifstreamをポインタとして宣言できないと思いますか?

ああ、私はfstreamを使って試してみましたが、ofstreamを宣言しても、すべて同じエラーです。 また、どのクラス(ソースまたはヘッダー)でも試しても問題ありません。常に同じです。私のドライバ(メイン)ファイルに直接、それに含まれているサイコロを使って宣言しようとしました... 完全にここで失われました!

答えて

7

Cランタイムをアプリケーションにリンクしていないようです。非ポインタとして宣言された場合は、少なくともifstreamクラスのコンストラクタをアプリケーションに持ち込みます。コンストラクタはCランタイムの一部である関数を呼び出すため、リンクエラーが発生するようです。

+1

または_correct_のCRTをリンクすることができません。 '__imp ___ CrtDbgReportW'はデバッグCRTに特有のものです。 – MSalters

+0

すごくありがとう、ありがとう。ランタイムライブラリに間違ったスレッディング(もの)が設定されていました。私はちょうどそれがSDLを使用するための設定を提案する怠惰なfooに設定していた、私はちょうど親(またはいくつかのそのようなオプション)から継承するように設定し、ロバートのおじいちゃんは恋人の中に住んでいる! – Julz

関連する問題