C++/CLI で次のことを行う方法はありますか? (アクションがサポートされていないため、答えはノーだと思いますか?)
public ref class MyClass {
public:
void TaskMethod();
void Start();
}
void MyClass::Start() {
Task^ myTask = Task::Factory->StartNew(??TaskMethod??);
}
アクションは単なるデリゲートであり、C++/CLI で完全にサポートされています。(C++/CLI でサポートされていないラムダと混同している可能性があります。)
C++/CLI でデリゲートを作成する構文は次のとおりです。
Task^ myTask = Task::Factory->StartNew(gcnew Action(this, &MyClass::TaskMethod));
// For non-static methods, specify the object. ^^^^
// Use the C++-style reference to a class method. ^^^^^^^^^^^^^^^^^^^^