DLLについて

解決


VC++6.0  2007-02-21 03:11:41  No: 64512

Windows XP VC++6.0で開発しております。

DLLでエクスポートしたクラスについての質問です。

DLL内で
Aという基底クラス(Generic)を継承したクラスBAをエクスポートしています。

クライアント(.exe)からBAで公開しているメンバ関数へはアクセスできるのですが、BAを通してAにアクセスすると、
アクセスしている箇所でLinkエラーの、

error C2019〜

が発生してしまいます。
そこで、Aの関数をBA内でオーバーライドしてやるとビルドできました。

この場合、エクスポートしたクラスの基底クラスのメンバ関数へは、
エクスポートしたクラスにオーバーライドしないとアクセスできないのでしょうか?


yoh2  2007-02-21 11:04:34  No: 64513

オーバーライドしなくても、Aをエクスポートしてあげればよいです。

> BAを通してAにアクセス

これ、結局Aのメンバ関数にアクセスしているわけですから、Aのエクスポートも必要になるのです。


VC++6.0  2007-02-21 17:52:19  No: 64514

>>yoh2さん

エラーが取れました!
本当に助かりました!
ありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加