問題タブ [declspec]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
69 参照

c++ - 動的に読み込まれた dll 内から C++ 関数を呼び出す

実行時に dll を動的にロードし、その dll 内の関数を呼び出す C++ プログラムを作成しています。それは正常に機能していますが、DLL内からC++プログラムで定義された関数を呼び出したいと思っています。

私の main.cpp は次のようになります。

アクセスされる dll の部分は C で記述されており、次のようになります。

__declspec(dllimport)と属性について読んだことがあり__declspec(dllexport)ますが、C++ は初めてで、これらが正しい使用方法であるかどうか、また使用する場合はどのように使用すればよいかわかりません。

0 投票する
1 に答える
61 参照

c++ - 仮想デストラクタを使用しない novtable 基本クラスでの削除の動作

私が理解しているように、インターフェイス ポインター (より具体的には、派生クラス インスタンスを指す基本クラス ポインター) で delete を呼び出し、その宣言に仮想デストラクタがない場合、結果の動作は未定義であり、デストラクタはの派生オブジェクトは呼び出されません。

通常は、基底クラスの仮想デストラクタを定義するか、インターフェイス ポインタでの削除の呼び出しを防ぐためにそれをプライベートに宣言します。

vtable なしでインターフェイスを宣言する場合

インターフェイスポインタを介してオブジェクトを削除すると、適切に定義された動作になり、適切なデストラクタが呼び出されますか? なぜそうなるのかはわかりませんが、そうではないと言われています。