[解決済み] STLコンテナをフィルタリングする最新の方法とは?
2022-06-29 07:04:48
質問
何年も C# を使用してきた後、C++ に戻ってきたのですが、現代の - C++11 の - 方法はどのようなものなのでしょうか。つまり、この Linq クエリと同様のものをどのように実現するかということです。
var filteredElements = elements.Where(elm => elm.filterProperty == true);
要素のベクトルをフィルタリングするために (
strings
この質問のために)?
私は心から、古いSTLスタイルのアルゴリズム(あるいは
boost::filter_iterator
を必要とする)ことを切に願います。
明示的なメソッド
を定義することは、もう時代遅れなのでしょうか?
どのように解決するのですか?
cplusplus.comの例を見てください。
std::copy_if
:
std::vector<int> foo = {25,15,5,-5,-15};
std::vector<int> bar;
// copy only positive numbers:
std::copy_if (foo.begin(), foo.end(), std::back_inserter(bar), [](int i){return i>=0;} );
std::copy_if
の各要素に対してラムダ式を評価します。
foo
の各要素に対してラムダ式を評価し、もしそれが
true
を返すと、その値を
bar
.
は
std::back_inserter
の末尾に実際に新しい要素を挿入することができます。
bar
(に挿入することができます。
push_back()
を使って)、最初に必要なサイズにリサイズすることなく、イテレータを使うことができます。
関連
-
[解決済み】なぜ、サイズ8の初期化されていない値を使用するのでしょうか?
-
[解決済み] C++でintをstringに変換する最も簡単な方法
-
[解決済み] std::vectorをハードコードされた要素で初期化する最も簡単な方法は何ですか?
-
[解決済み] STL」と「C++ Standard Library」の違いは?
-
[解決済み] なぜC++ STLは "ツリー "コンテナを提供しないのですか?
-
[解決済み】STLにおけるvectorとlistの比較
-
[解決済み】STLのdequeって実際どうなの?
-
[解決済み】特定のSTLコンテナをどのようなシナリオで使用するか?
-
[解決済み] STLとQtのコンテナ?
-
[解決済み] 独自のSTLコンテナを作成する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】LLVMで暗黙のうちに削除されたコピーコンストラクタの呼び出し
-
[解決済み】C++ 式はポインタからオブジェクトへの型を持っている必要があります。
-
[解決済み】C++エラー:の初期化に一致するコンストラクタがありません。
-
[解決済み】cc1plus:エラー:g++で認識されないコマンドラインオプション"-std=c++11"
-
[解決済み】Visual C++で "Debug Assertion failed "の原因となる行を見つける。
-
[解決済み] 式はクラス型を持つ必要があります。
-
[解決済み】#include<iostream>は存在するのですが、「識別子 "cout "は未定義です」というエラーが出ます。なぜですか?
-
[解決済み】浮動小数点数の乱数生成
-
[解決済み】Eclipse IDEでC++エラー「nullptrはこのスコープで宣言されていません」が発生する件
-
[解決済み】'std::cout'への未定義の参照