È ansible iterare un vettore dalla fine all’inizio? for (vector::iterator i = my_vector.end(); i != my_vector.begin(); /* ?! */ ) { } O è ansible solo con qualcosa del genere: for (int i = my_vector.size() – 1; i >= 0; –i) { }
Durante l’ottimizzazione del programma, cercando di ottimizzare un loop che itera su un vettore, ho trovato il seguente fatto: :: std :: vector :: at () è ESTREMAMENTE più lento dell’operatore []! L’operatore [] è da 5 a 10 volte più veloce rispetto a () , sia nelle versioni di rilascio e debug (VS2008 x86). […]
Da sono entrambi contenitori contigui di memoria; Dal punto di vista della funzionalità, deque ha quasi tutto il vettore ha ma di più, dal momento che è più efficiente da inserire nella parte anteriore. Perché qualcuno dovrebbe preferire std::vector a std::deque ?
Quali sono le principali differenze tra i tipi di dati vettoriali e di lista in R? Quali sono i vantaggi o gli svantaggi dell’utilizzo (o meno) di questi due tipi di dati? Gradirei vedere esempi che dimostrano i casi d’uso dei tipi di dati.
Ho una matrice di valori che viene trasmessa alla mia funzione da una parte diversa del programma che ho bisogno di memorizzare per un’elaborazione successiva. Dato che non so quante volte verrà chiamata la mia funzione prima che sia il momento di elaborare i dati, ho bisogno di una struttura di archiviazione dynamic, quindi ho […]
Secondo la bozza standard ( 23.3.6.4 dati vettoriali ), data () punta alla matrice sottostante e [data(), data() + size()) deve essere un intervallo valido: T* data() noexcept; const T* data() const noexcept; 1 Returns: A pointer such that [data(),data() + size()) is a valid range. For a non-empty vector, data() == &front(). 2 Complexity: […]
vector<vector> sort_a; vector v2; vector v3; for (int i=0; i<4; ++i) { v2.push_back(i); for (int j=0; j<4; ++j) { v3.push_back(j); sort_a.push_back(v2); sort_a.push_back(v3); } } Il vettore sort_a dovrebbe essere un array 4×4, invece l’output è 31×1 con molti elementi vuoti, come posso inserire elementi in un vettore multidimensionale?
Ho bisogno di allocare dynamicmente array 1-D e 2-D le cui dimensioni sono date in fase di esecuzione. Sono riuscito a “scoprire” std::vector e penso che si adatti ai miei scopi, ma vorrei chiedere se ciò che ho scritto è corretto e / o può essere migliorato. Questo è quello che sto facendo: #include typedef […]
Sono un po ‘confuso riguardo a ciò che entrambi mi sembrano uguali. Sebbene possa accadere che capacità e dimensioni possano differire su diversi compilatori. come può essere diverso Ha anche detto che se siamo fuori dalla memoria la capacità cambia. Tutte queste cose non sono chiare per me. Qualcuno può dare una spiegazione (se ansible […]
Avendo un vettore x e devo aggiungere un elemento ( newElem ). C’è qualche differenza tra – x(end+1) = newElem; e x = [x newElem]; ?