0 Tage Serie
cpp / intermediate
Snippet

Optimierte Referenzen in Schleifen

Beim Iterieren über Container mit Objekten wie Strings vermeidet die Verwendung einer 'const reference' teure Kopieroperationen bei jeder Iteration.

snippet.cpp
cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <vector>
#include <string>
void process(const std::vector<std::string>& list) {
for (const std::string& item : list) {
// Read item without copying
}
}
int main() {
std::vector<std::string> data = {"Hello", "World"};
process(data);
return 0;
}
Erklärung
1
const std::string& item
Verhindert das Kopieren des String-Objekts in die Schleifenvariable, was die Leistung verbessert.
2
const
Stellt sicher, dass die Schleifenvariable den ursprünglichen Inhalt des Vektors nicht verändern kann.