Articles of vector

C ++ cancella vettore, oggetti, memoria libera

Sono totalmente confuso riguardo alla cancellazione di cose in C ++ Se dichiaro una matrice di oggetti e se uso la funzione clear() . Posso essere sicuro che la memoria sia stata rilasciata? Per esempio : tempObject obj1; tempObject obj2; vector tempVector; tempVector.pushback(obj1); tempVector.pushback(obj2); Posso tranquillamente chiamare chiaro per liberare tutta la memoria? O devo […]

Vettore STL e sicurezza del filo

Diciamo che ho un vettore di elementi N, ma fino a n elementi di questo vettore hanno dati significativi. Un thread di aggiornamento aggiorna l’ennesimo n + 1 ° elemento (quindi imposta n = n + 1), controlla anche se n è troppo vicino a N e chiama vector :: ridimensiona (N + M) se […]

Come inizializzare std :: vector dall’array in stile C?

Qual è il modo più economico per inizializzare un std::vector da un array in stile C? Esempio: nella class seguente, ho un vector , ma a causa di restrizioni esterne, i dati verranno passati come array in stile C: class Foo { std::vector w_; public: void set_data(double* w, int len){ // how to cheaply initialize […]

Come inizializzare un vettore in C ++

Possibile duplicato: C ++: il modo più semplice per inizializzare un vettore STL con elementi hardcoded Voglio inizializzare un vettore come facciamo in caso di un array. Esempio int vv[2] = {12, 43}; Ma quando lo faccio in questo modo, vector v(2) = {34, 23}; O vector v(2); v = {0, 9}; dà un errore: […]

vector :: size_type in C ++

Cosa si intende per questa istruzione C ++? vector::size_type x; E a cosa serve l’operatore scope :: qui? In altre parole, come leggiamo questa affermazione in inglese? Ad esempio, per X::x(){…} , diciamo che x() è una member function della class X

Come posso stampare gli elementi di un vettore C ++ in GDB?

Voglio esaminare il contenuto di un file std::vector in GDB, come faccio? Diciamo che è un std::vector per semplicità.

Rimozione di elementi dal vettore, mentre in C ++ 11 intervallo ‘per’ ciclo?

Ho un vettore di IInventory *, e sto scorrendo la lista usando l’intervallo C ++ 11 per fare cose con ognuno. Dopo aver fatto un po ‘di roba con uno, potrei voler rimuoverlo dalla lista ed eliminare l’object. So che posso delete l’ delete sul puntatore in qualsiasi momento per ripulirlo, ma qual è il […]

Che cosa dice lo standard su come la chiamata chiara su un vettore cambia la capacità?

Questo sito web implica che la cancellazione di un vettore PU MAY cambiare la capacità: http://en.cppreference.com/w/cpp/container/vector/clear Molte implementazioni non rilasceranno la memoria allocata dopo una chiamata a clear (), lasciando invariata la capacità () del vettore. Ma secondo @JamesKanze questo è sbagliato e gli standard mandati chiari non cambieranno la capacità. Cosa dice lo standard?

Come usare un iteratore?

Sto cercando di calcolare la distanza tra due punti. I due punti che ho memorizzato in un vettore in C ++: (0,0) e (1,1). Dovrei ottenere risultati come 0 1.4 1.4 0 Ma il risultato effettivo che ho ottenuto è 0 1 -1 0 Penso che ci sia qualcosa di sbagliato nel modo in cui […]

Converti un vettore in una stringa

Ho un vector contenitore che ha numeri interi (ad esempio {1,2,3,4}) e vorrei convertirlo in una stringa del modulo “1,2,3,4” Qual è il modo più pulito per farlo in C ++? In Python questo è come lo farei: >>> array = [1,2,3,4] >>> “,”.join(map(str,array)) ‘1,2,3,4’