Dalam tutorial ini, kita akan belajar mengenai C ++ yang terdiri daripada gelung dan amalan terbaiknya dengan bantuan contoh.
C ++ 11 memperkenalkan for
gelung berkisar . Ini for
gelung secara khusus digunakan dengan koleksi seperti tatasusunan dan vektor .
Sebagai contoh,
// initialize an int array int num(3) = (1, 2, 3); // use of ranged for loop for (int var : num) ( // code )
Di sini, for
gelung berjulat mengulangi bilangan array dari awal hingga akhir. The int
var pembolehubah menyimpan nilai elemen array dalam setiap lelaran.
Sintaksnya adalah,
for (rangeDeclaration : rangeExpression) ( // code )
Dalam contoh di atas,
- Perisytiharan julat -
int var
- rangeExpression - bilangan

Contoh 1: Dijangka untuk Gelung Menggunakan Array
#include using namespace std; int main() ( // initialize array int numArray() = (1, 2, 3, 4, 5); // use of ranged for loop to print array elements for (int n : numArray) ( cout << n << " "; ) return 0; )
Pengeluaran
1 2 3 4 5
Dalam contoh ini, kami menyatakan dan menginisialisasi int
array bernama numArray. Di sini, kami menggunakan for
gelung berkisar untuk mencetak elemen numArray.
- lelaran pertama - n mengambil nilai anggota pertama array, iaitu
1
- lelaran kedua - n mengambil nilai
2
dan kemudian dicetak dan seterusnya.
Catatan: Gelung berkisar untuk secara automatik mengulangi array dari awal hingga akhir. Kami tidak perlu menentukan bilangan lelaran dalam gelung.
Contoh 2: C ++ Dibentuk untuk Gelung Menggunakan Vektor
#include #include using namespace std; int main() ( // declare and initialize vector vector num_vector = (1, 2, 3, 4, 5); // print vector elements for (int n : num_vector) ( cout << n << " "; ) return 0; )
Pengeluaran
1 2 3 4 5
Contoh 3: Menyatakan Koleksi di dalam Gelung
#include using namespace std; int main() ( // define the collection in the loop itself for (int n : (1, 2, 3, 4, 5)) ( cout << n << " "; ) return 0; )
Pengeluaran
1 2 3 4 5
Di sini, kami telah menyatakan koleksi dalam lingkaran itu sendiri iaitu
rangeExpression = (1, 2, 3, 4, 5)
Ini juga merupakan cara yang tepat untuk menggunakan for
gelung berkisar , dan berfungsi dengan cara yang sama seperti ketika kita menggunakan susunan atau vektor yang sebenarnya.
C ++ Dijangka untuk Amalan Terbaik Gelung
Dalam contoh di atas, kami telah menyatakan pemboleh ubah dalam for
gelung untuk menyimpan setiap elemen koleksi dalam setiap lelaran.
int num(3) = (1, 2, 3); // copy elements of num to var for (int var : num) ( // code )
Namun, lebih baik menulis berdasarkan julat untuk gelung seperti ini:
// access memory location of elements of num for (int &var : num) ( // code )
Perhatikan penggunaan &
sebelum var. Di sini,
int var : num
- Menyalin setiap elemen num ke pemboleh ubah var dalam setiap lelaran. Ini tidak baik untuk memori komputer.int &var : num
- Tidak menyalin setiap unsur num ke var. Sebaliknya, mengakses unsur num secara langsung dari angka itu sendiri. Ini lebih cekap.
Nota: The &
operator dikenali sebagai pengendali rujukan. Kami akan mengetahui lebih lanjut mengenainya dalam petunjuk C ++.

Catatan: Sekiranya kita tidak mengubah susunan / vektor / koleksi dalam gelung, lebih baik menggunakan const
kata kunci dalam deklarasi julat.
// collection is not modified in the loop for (const int &var : num) ( // code )