dllの同じ名前の関数を2つ以上宣言する方法について
Posted: 2011年3月19日(土) 05:54
dllを作成しています
色々関数を作ってます
そこで、たとえば画像の読み込みをする関数を作っているのですが
関数で、ファイル名だけの場合と、ディレクトリ+ファイル名というふたつ用意したいです
そこで、下のように宣言したところ
dxdraw3.h(45) : error C2733: オーバーロードされた関数 'DxDraw_LoadBitmap' の C リンケージの 2 回以上の宣言は許されません。
とコンパイルエラーがでました
C/C++のdllでは同じ名前の違う引数をもつ関数を持つことはできるのでしょうか?
できたらその方法も教えてくれると助かります
(質問書いてて思ったのですが、extern "C" ってあるので、C/C++言語ではなく C言語になるのでしょうか?)
環境:Visual C++ 6.0
OS:WindowsXP
dllを利用する実行ファイルもWindowsXP
色々関数を作ってます
そこで、たとえば画像の読み込みをする関数を作っているのですが
関数で、ファイル名だけの場合と、ディレクトリ+ファイル名というふたつ用意したいです
そこで、下のように宣言したところ
#define EXPORT extern "C" __declspec(dllexport)
// ビットマップ、描画 関連
EXPORT IMAGE DxDraw_LoadBitmap( char *filename );
EXPORT IMAGE DxDraw_LoadBitmap( char *directory, char *filename );
とコンパイルエラーがでました
C/C++のdllでは同じ名前の違う引数をもつ関数を持つことはできるのでしょうか?
できたらその方法も教えてくれると助かります
(質問書いてて思ったのですが、extern "C" ってあるので、C/C++言語ではなく C言語になるのでしょうか?)
環境:Visual C++ 6.0
OS:WindowsXP
dllを利用する実行ファイルもWindowsXP