スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

C++でrubyのinjectっぽい文を書く

そもそもRubyのArray.injectって何ぞ?

https://www.google.co.jp/search?q=ruby%20inject


arrayの総和と最大値を求めるプログラムをinjectを使って書くと、次のようになる。
(もっとすっきりとした書き方はある)
arr = [1,2,3]
sum = arr.inject(0){|s,e| s=s+e ; s}
max = arr.inject{|s,e| s = e if s < e ; s}

これをC++で使いたい。



特に悩むことは無かった。


ちょっと記述が長くなるのが難点。マクロが使える環境なら、マクロ使って書いた方がすっきりする。

ラムダ式がfalseを返したらそこでループを中断するようにした。

参照を使えば要素の書き換えも出来てしまう。変わった配列の初期化にも使えるかもしれない。



僕のような algorithm 関数群が覚えられない方は是非
スポンサーサイト

テーマ : プログラミング
ジャンル : コンピュータ

tag : c++ Ruby

コメントの投稿

非公開コメント

ブログ移転のお知らせ
ブログをshonen.hateblo.jpに移転します. 新規の記事はこちらに投稿します.
プロフィール

舞葉(ぶよう)

Author:舞葉(ぶよう)
github.io
はてなブログ(競プロ)

古い記事のソースコードは色分けしていないので、高機能テキストエディタに貼り付けたほうが見やすいかも。

検索フォーム
このブログについて
自分がつまづいた話題、なんとなく書きたいと思ったこと、ググったけど殆ど資料なかったぞオイ な話等をアップする予定。通りすがりでも、参考になっていただければと。プログラムの例外入力、メモリリークは責任負いません。投稿された記事は修正・削除する場合があります。
カテゴリ
タグ

HSP3アルゴリズムとデータ構造c++RubyJavaUnity画像解析C機械学習C#LinuxcodeIQKinectMinecraftTonyuSystemraspberrypiPythonHTML5音声制御Simulinkruby俺ルール通信制御Javascriptシミュレーション

counter-shinobi
固定記事
最新記事
最新コメント
月別アーカイブ
ブロとも申請フォーム

この人とブロともになる

アクセスランキング
[ジャンルランキング]
コンピュータ
995位
アクセスランキングを見る>>

[サブジャンルランキング]
プログラミング
199位
アクセスランキングを見る>>
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。