掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
exportしたいクラスのメンバにSTLが存在するためコンパイルすると警告が出る (ID:57145)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
DLLを作成しています。 クラスのエクスポートをしようとしています。 エクスポートをしたいのですが、 エクスポートしたいクラスのメンバには、 stl::listや、stl::vectorが含まれています。 クラスをエクスポートするときは、 エクスポートしたいクラスの基底クラスや、 そのメンバになっているクラスも エクスポートしなければならないため、かどうか 現状ではwarning C4251が出ます。 (STLなどが含まれていないクラスはエクスポートできています) しかし、stl::listや、stl::vectorは、 VC付属のものですので、ヘッダを変更することができません。 エクスポートのためのDEFファイルもありません。 (そもそも、クラスエクスポートの際のDEFの記述がどうなるのかわかりません) どうすればよいでしょうか。 CランタイムライブラリにはDLL版がありますけど、STLにはないのでしょうか。 テンプレートの性質上DLLにはなじまないのかもしれませんが……。 設計上、エクスポートしたいクラスにSTLが入っていること自体がおかしいのかもしれません。 その場合はどういった手段が考えられますでしょうか。STLを除くしかないでしょうか。 何かヒントがあれば、 どんなものでも良いので、 よろしくお願いします。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.