.dll ライブラリを OOP 方式で実装しています
私のマクロは次のとおりです。
#ifndef _SWC_
#define DLLINTERFACE __declspec(dllexport)
#else
#define DLLINTERFACE __declspec(dllimport)
DLLINTERFACE
いくつかの s を使用してクラス名の前に置いた後、コンパイラーは、sで使用する各関数に対して を std
提供する必要があるといういくつかの警告を表示します。いくつかの関数を配置してこれを解決しようとしましたが、クラス名に既に配置しているため、エラーが発生します。おそらく、すべてのパブリック関数を警告で定義することにより、警告を削除できます。しかし、個々の関数ではなく、クラス名のみを定義することで警告をなくすにはどうすればよいでしょうか?dll-interface
std
DLLINTERFACE
DLLINTERFACE
このような:
class DLLINTERFACE Foo
{
public:
std::string bar();
};
しかし、これではありません:
class Foo
{
public:
std::string DLLINTERFACE bar();
};