Introduction Rubyのラムダ式でアロー演算子を覚えて使うようになりました.そんなある日,Groovyに手を出したのですが,アロー演算子によるメソッド定義の書式がRubyと異なるので「?」となって,色々な言語のアロー演算子の書式について調べてみました. 調べてみると,「ラムダ式」「アロー演算子」「アロー関数」「クロージャ」など呼び方も仕組みもさまざまであり,同じものとして扱って良いのか悩みましたが,せっかく調べたので公開します.この投稿内容では,『「=>」か「->」を使ってメソッド(のようなもの)を定義して変数に代入し,(メソッドのように)実行できる』ものを対象としています. 他にもアロー演算子によりメソッド(のようなもの)を記述できる言語はありますが,短時間で調べたので抜けがあります.ご指摘いただければ徐々に改訂していきたいと思っています.できればサンプルプログラムとともにご
この記事では,前編に引き続き, C++14 のラムダ式について説明していく. 前編では,ラムダ式に対する大雑把な説明と,ラムダ式の持つ型推論機能を紹介した. この記事では,ラムダ式の最も重要な機能の一つである,変数のキャプチャについて説明したい. なお,初めて この記事を読む方は,先に前編を読むことをお勧する. 目次(再掲): ラムダ式の基礎 (前編で解説) ラムダ式の型推論(前編で解説) 変数のキャプチャ(この記事で解説) ラムダ式の活用法(執筆中) マニア向けの補足(執筆中) 変数のキャプチャ ラムダ式により生成されるクラスの operator() の関数本体は, this ポインタやメンバ変数・関数の扱いを除き,ラムダ式の本体と同じコードになる. // 例えば, auto f = [] (int x, int y) { return x + y; } // 上のコードは, struc
C++14 の Committee Draft が公開された. C++14 は基本的には C++11 のマイナーバージョンアップであるが,バグフィックスのみを行っている訳ではなく, C++11 の時点で微妙に使いにくかった機能,特にラムダ式については,大きな機能追加が行われている. そこで,本 blog では,このエントリから数回に分けて, C++14 のラムダ式について説明してみることにする. 拙い文章になるかとは思うが,読者の理解の助けになれば幸いである. なお,これらの記事を書くにあたって,読者に対して C++11 のラムダ式に対する知識を要求しないように心がけたが, もしかしたら,説明不十分であり,分かりにくい部分があるかもしれない. そのような場合には, 本の虫: lambda 完全解説 等, C++11 のラムダについて書かれた記事は多いので, それらの記事を読んでみることを
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く