1

この行がこのエラーを生成する理由を誰か教えてもらえますか?

virtual void Calculate(Pose *out_pose, HiBoneMask *mask = NULL, HiBoneMask *positionMask = NULL) = NULL;

ビジュアル スタジオとコード ブロックの両方で、骨格アニメーション ライブラリ用にこのデモをコンパイルしようとしています。Visual Studio では、194 個のエラー コード ブロックが 1 つだけ表示されます。コードブロックを機能させたいので、このエラーを提示しました。ありがとう

4

7 に答える 7

3

=0;純粋な仮想機能用である必要があります。NULLである必要はありません0(たとえば、 である可能性があります0L)。

于 2012-07-27T07:42:27.060 に答える
3

= NULL最後に置き換えます= 0

于 2012-07-27T07:42:00.373 に答える
1

C++のNULLには二重の意味があります。

NULL: NULL ポインター このマクロは、NULL ポインター定数に展開されます。

通常、ヌル ポインターは、ポインターがどのオブジェクトも指していないことを示すために使用されます。C++ では、NULL は 0 または 0L に展開されます。

したがって、あなたの場合、使用する必要があります

function(arguments) = 0;

于 2012-07-27T07:43:26.570 に答える
1

NULL != 0 ですが、「NULL」を使用したい場合は #define NULL 0 を使用できます。

于 2012-07-27T11:03:24.050 に答える
0

= 0代わりに試しました= NULLか?

于 2012-07-27T07:44:34.830 に答える
0

NULL != 0。

virtual void Calculate(Pose *out_pose, HiBoneMask *mask = NULL, HiBoneMask *positionMask = NULL) = 0; 

正しい。

于 2012-07-27T07:42:40.437 に答える
0

使用する純粋仮想関数の宣言

 virtual void function() = 0;

NULL の代わりに;

于 2012-07-27T07:43:25.990 に答える