特定のクラスのインライン メンバー関数を使用しようとしています。たとえば、インライン化なしの関数の宣言と実装は次のとおりです。
ヘッダーファイルで:
int GetTplLSize();
.cpp ファイルで:
int NeedleUSsim::GetTplLSize()
{
return sampleDim[1];
}
何らかの理由で、「inline」キーワードを実装と宣言のいずれか一方、および両方に配置すると、次のようなリンカ エラーが発生します。
ライブラリ C:\DOCUME~1\STANLEY\LOCALS~1\TEMP\MEX_HN~1\templib.x およびオブジェクト C:\DOCUME~1\STANLEY\LOCALS~1\TEMP\MEX_HN~1\templib.exp の作成 mexfunction.obj : エラー LNK2019: 未解決の外部シンボル "public: int __thiscall NeedleUSsim::GetTplLSize(void)" (?GetTplLSize@NeedleUSsim@@QAEHXZ) が関数 _mexFunction で参照されています mexfunction.mexw32 : 致命的なエラー LNK1120: 1 つの未解決の外部 C:\PROGRA~1\MATLAB\R2008B\BIN\MEX.PL: エラー: 'mexfunction.mexw32' のリンクに失敗しました。
このエラーを取り除くには何が必要ですか (つまり、これらのインライン メンバー関数を作成する際に何が間違っているのでしょうか)。