全体像としては、Bada で単一の UI コントロール (ラベル) を持つフレーム ベースのアプリケーションを作成したいと考えています。ここまでは順調ですが、選択した数を表示し、X 秒ごとに繰り返しデクリメントしたいと考えています。スレッドは問題ありませんが (私はそう思います)、ラベル ポインターをクラス変数として渡すことができません。
//MyTask.h
//...
result Construct(Label* pLabel, int seconds);
//...
Label* pLabel;
//MyTask.cpp
//...
result
MyTask::Construct(Label* pLabel, int seconds) {
result r = E_SUCCESS;
r = Thread::Construct(THREAD_TYPE_EVENT_DRIVEN);
AppLog("I'm in da constructor");
this->pLabel = pLabel;
this->seconds = seconds;
return r;
}
//...
bool
Threading::OnAppInitializing(AppRegistry& appRegistry)
{
// ...
Label* pLabel = new Label();
pLabel = static_cast<Label*>(pForm->GetControl(L"IDC_LABEL1"));
MyTask* task = new MyTask();
task->Construct(&pLabel); // HERE IS THE ERROR no matching for Label**
task->Start();
// ...
}
問題は、コンビナトリクスで知られている*、&、および単純なpLabelのすべての可能な組み合わせを試したことです...
これを取得することはそれほど重要ではありません (トレーニングのためだけです) が、問題を解決する方法を理解したいと思っています。