次のコードは、宣言された配列のすべての要素が奇数であるかどうかをチェックします。all_of配列の一部のすべての要素の条件を検査する関数
#include "stdafx.h"
#include <iostream> // std::cout
#include <algorithm> // std::all_of
#include <array> // std::array
int main() {
std::array<int,8> foo = {3,5,7,11,13,17,19,23};
if (std::all_of(foo.begin(), foo.end(), [](int i){return i%2;}))
std::cout << "All the elements are odd numbers.\n";
return 0;
}
(サンプルがhttp://www.cplusplus.com/reference/algorithm/all_ofから採取された)
どうかチェックしたいfoo[2]
から出発して宣言された配列のすべての要素は奇数です。
foo.begin()
をfoo[2]
に置き換えても機能しません。私は、この作業を行うために他の多くのものを試しました。非常に基本的なもの(ここでは非常に基本的なC++ユーザー)です。私はこれを達成するために配列のサイズを変更したくありません。
最終的に、私はちょうどの一部のいずれかの要素上の条件についてfor
ループチェックなど、条件は、アレイの一部の上のすべてのの要素のためにチェックされているループを持っている探していますアレイ。これはRで実現するのは比較的簡単ですし、C++で実現するのも同じことが期待されます。
'foo.begin()を' foo.begin()+ 2'に置き換えていますか? – DimChtz
ありがとうございます。それはうまくいった!これで一日中過ごした。乾杯。 – Krug
'foo.begin()'は 'iterator'、' foo [2] 'は値です。 – Jarod42