I vettori in C++ sono un contenitore dinamico basato su array utilizzato per archiviare una raccolta di elementi dello stesso tipo. A differenza degli array, i vettori possono aumentare o diminuire le dimensioni in modo dinamico, rendendola una struttura dati comoda ed efficiente per archiviare e manipolare i dati.
Un vettore viene definito includendo l'intestazione e dichiarando un oggetto vettore. Il tipo di vettore è specificato tra parentesi angolari, seguito dal nome della variabile. Per esempio:
#include std::vector myVector;
Una volta definito un vettore, è possibile aggiungervi degli elementi utilizzando il metodo push_back(). Questo metodo aggiunge un nuovo elemento alla fine del vettore. Per esempio:
myVector.push_back(1); myVector.push_back(2); myVector.push_back(3);
I vettori forniscono anche l'accesso ai singoli elementi utilizzando l'operatore []. L'indice del primo elemento nel vettore è 0 e l'indice dell'ultimo elemento è size()-1. Per esempio:
std::cout << myVector[0] << std::endl; std::cout << myVector[1] << std::endl; std::cout << myVector[2] << std::endl;
Oltre ad aggiungere elementi, i vettori forniscono anche metodi per inserire, rimuovere e modificare elementi. Il metodo insert() può essere utilizzato per inserire un elemento in un indice specifico nel vettore. Il metodo erase() può essere utilizzato per rimuovere un elemento da un indice specifico nel vettore. Il metodo clear() può essere utilizzato per rimuovere tutti gli elementi da un vettore.
I vettori forniscono anche diversi metodi utili per scorrere gli elementi di un vettore. Il metodo Begin() restituisce un iteratore che punta al primo elemento del vettore, mentre il metodo end() restituisce un iteratore che punta all'ultimo elemento del vettore. Un iteratore può essere utilizzato per accedere agli elementi di un vettore uno per uno, come mostrato nell'esempio seguente:
std::vector::iterator it; for (it = myVector.begin(); it != myVector.end(); it++) { std::cout << *it << std::endl; }
I vettori forniscono anche il metodo size(), che restituisce il numero di elementi nel vettore. Questo può essere usato per verificare se un vettore è vuoto, come mostrato nell'esempio seguente:
if (myVector.empty()) { std::cout << 'The vector is empty.' << std::endl; } else { std::cout << 'The vector is not empty.' << std::endl; }
In conclusione, i vettori sono una struttura dati potente ed efficiente in C++ che fornisce un contenitore dinamico basato su array per archiviare e manipolare raccolte di elementi. I vettori forniscono metodi per aggiungere, rimuovere e modificare elementi, nonché per scorrere gli elementi in un vettore. Utilizzando i vettori in C++ è possibile scrivere codice più conciso ed efficiente per lavorare con raccolte di dati.
Aggiunta di due vettori in C++
convertire l'array di byte in stringa
Ecco un codice di esempio in C++ che dimostra come aggiungere due vettori:
#include #include std::vector addVectors(const std::vector& vec1, const std::vector& vec2) { // Check if the vectors have the same size if (vec1.size() != vec2.size()) { std::cout << 'Error: Vectors must have the same size to add them.' << std::endl; return std::vector(); } // Create a vector to store the result std::vector result(vec1.size()); // Add the elements of vec1 and vec2 and store the result in result for (int i = 0; i < vec1.size(); i++) { result[i] = vec1[i] + vec2[i]; } return result; } int main() { // Create two vectors std::vector vec1 = {1, 2, 3}; std::vector vec2 = {4, 5, 6}; // Add the two vectors std::vector result = addVectors(vec1, vec2); // Print the result std::cout << 'The result of adding the two vectors is: ['; for (int i = 0; i < result.size(); i++) { std::cout << result[i]; if (i != result.size() - 1) { std::cout << ', '; } } std::cout << ']' << std::endl; return 0; }
Produzione
The result of adding the two vectors is: [5, 7, 9]
Spiegazione:
In questo codice, la funzione addVectors accetta due vettori come input e restituisce un vettore che contiene la somma degli elementi dei vettori di input. La funzione main crea due vettori, vec1 e vec2, e li somma utilizzando la funzione addVectors. Il risultato viene quindi stampato sulla console.
Si noti che questo codice presuppone che i vettori abbiano la stessa dimensione. Se i vettori hanno dimensioni diverse, la funzione addVectors restituirà un vettore vuoto e stamperà un messaggio di errore.