は、複素数の配列を繰り返し処理して合計したいとします。私はこれを行う2つの方法があります。より良い、なぜあるC++の配列ポインタ[]または++
A)
double sum (double * series, int size) {
double sum = 0.0;
for (int i = 0; i < size; i++) {
sum += *series++;
}
return sum;
}
B)
double sum (double * series, int size) {
double sum = 0.0;
for (int i = 0; i < size; i++) {
sum += series[i];
}
return sum;
}
/Iは、他の上で1つ使用する必要が場合。
私はBの方が好きです。なぜなら、ポインターの仕組みがわからないと、理解しやすくなります。 std :: accumulateでベクトルを使うこともできます。 – chris
スタイルAはあなたが達成していることを私にはっきりと分かりません。個人的には、私は常にC#の背景から来るスタイルBを選択します。 –
@Richard J.Ross III、 '* series'は、どのシリーズが指しているデータに含まれているかを評価します。ループは系列をインクリメントし、毎回配列の次の要素を指し示します。 – chris