Ho il seguente codice, e mi stavo chiedendo se sto iterando in modo ottimale attraverso il mio ciclo a distanza:
struct data_type
{
int a;
int b;
};
int main()
{
// Assume I have initialized a vector storing data_type objects.
// The vector is called "vec".
for (const data_type& temp: vec)
{
// Observe temp's attributes (int a and int b).
}
}
È meglio iterare usando il riferimento costante come ho fatto? O iterando per valore sii migliore (data_type temp: vec). Sto chiedendo sia per scrivere codice più chiaro e codice più efficiente.
Ho sentito dire che è meglio / efficiente passare il valore con i piccoli tipi di dati, come gli inte. La mia struct "data_type" è composta solo da due interi, quindi non sono sicuro che sia meglio usare un riferimento o un valore costante.
Sull'argomento del codice più chiaro, mi sembrano chiari sia il riferimento costante che il passaggio per valore (sebbene forse ci siano opinioni divergenti su questo).