にほんごのれんしゅう

日本語として伝えるための訓練を兼ねたテクログ

Appmethodを使ってみた01

Appmethodを使ってみた01

Appmethodとは

C++Android, iPhone, Windowsマルチプラットフォームを開発できる. C++はclangをバックエンドとしてC++11まで対応していると,Appmethodの開発会社であるエンバカデロは発表した.
以下の戻り値を推定するコードが動かなかったので, C++14は未対応らしい.

template <class T, class U>
auto f(T const & t, U const & u){
    return t + u;
};//autoだめよといわれた

作り方はC#のフォームアプリケーションと同じ

XMLでパーツを定義するという精神力を消耗するコストをかけずに,ポチポチと部品を貼り付けて実装できる.
ボタンオブジェクトをはじめ大抵のものはそろっている.

Visual C++C++11よりはだいぶましだよ!

 イベントに関連付けたメソッドでlambdaが使えるのです!です!
 以下サンプル.

/*
 * @brief 終了ボタンが押されたときの動作
 */
void __fastcall TTabbedForm::ButtonExitClick(TObject *Sender)
{
  auto aLambda = [](){::ShowMessage("i will halt this application...");};
  aLambda();
  //sleep 1sec
  ::sleep(1);
  ::exit(1);
}

TTabbedForm::ButtonExitClickはどっかのオブジェクトにバインドされているはずなのだが,ちゃんとlambdaは動く.

boostライブラリが使えない...

うぎゃあ