Pertanyaan yang diberi tag «stdvector»

Jenis urutan yang ditentukan sebagai bagian dari Pustaka Standar.


18
Bagaimana cara mencetak isi vektor?
Saya ingin mencetak isi vektor di C ++, inilah yang saya miliki: #include <iostream> #include <fstream> #include <string> #include <cmath> #include <vector> #include <sstream> #include <cstdio> using namespace std; int main() { ifstream file("maze.txt"); if (file) { vector<char> vec(istreambuf_iterator<char>(file), (istreambuf_iterator<char>())); vector<char> path; int x = 17; char entrance = vec.at(16); …
282 c++  vector  output  stdvector  cout 


8
Apakah std :: vector menyalin objek dengan push_back?
Setelah banyak penyelidikan dengan valgrind, saya telah membuat kesimpulan bahwa std :: vector membuat salinan dari objek yang ingin Anda push_back. Benarkah itu benar? Vektor tidak dapat menyimpan referensi atau penunjuk objek tanpa salinan ?! Terima kasih
169 c++  stl  stdvector 

9
C ++ valarray vs vektor
Saya suka banyak vektor. Mereka bagus dan cepat. Tapi saya tahu benda yang disebut valarray ini ada. Mengapa saya menggunakan valarray bukan vektor? Saya tahu valarrays memiliki sedikit gula sintaksis, tetapi selain itu, kapan mereka berguna?

6
C ++, salin set ke vektor
Saya perlu menyalin std::setke std::vector: std::set <double> input; input.insert(5); input.insert(6); std::vector <double> output; std::copy(input.begin(), input.end(), output.begin()); //Error: Vector iterator not dereferencable Dimana masalahnya?
146 c++  copy  stdvector  stdset 


8
Cara efisien untuk mengembalikan std :: vector di c ++
Berapa banyak data yang disalin, ketika mengembalikan std :: vector dalam sebuah fungsi dan seberapa besar optimasi akan menempatkan std :: vector di free-store (di heap) dan mengembalikan pointer yaitu: std::vector *f() { std::vector *result = new std::vector(); /* Insert elements into result */ return result; } lebih efisien daripada: …

6
Bagaimana cara mengacak std :: vector?
Saya mencari cara umum yang dapat digunakan kembali untuk mengacak a std::vectordi C ++. Beginilah cara saya saat ini melakukannya, tetapi menurut saya itu tidak terlalu efisien karena memerlukan array perantara dan perlu mengetahui jenis itemnya (DeckCard dalam contoh ini): srand(time(NULL)); cards_.clear(); while (temp.size() > 0) { int idx = …
97 c++  shuffle  stdvector 

8
vektor :: di vs. vektor :: operator []
Saya tahu itu at()lebih lambat daripada []karena pemeriksaan batasnya, yang juga dibahas dalam pertanyaan serupa seperti C ++ Vector pada / [] kecepatan operator atau :: std :: vector :: at () vs operator [] << hasil yang mengejutkan !! 5 hingga 10 kali lebih lambat / lebih cepat! . …
95 c++  stl  stdvector 


10
Menggunakan std :: vector sebagai view on ke memori mentah
Saya menggunakan perpustakaan eksternal yang pada beberapa titik memberi saya pointer mentah ke array bilangan bulat dan ukuran. Sekarang saya ingin menggunakan std::vectoruntuk mengakses dan memodifikasi nilai-nilai ini di tempat, daripada mengaksesnya dengan pointer mentah. Berikut adalah contoh artikifial yang menjelaskan intinya: size_t size = 0; int * data = …
71 c++  c++11  vector  stdvector 

3
std :: vector (ab) menggunakan penyimpanan otomatis
Pertimbangkan cuplikan berikut: #include <array> int main() { using huge_type = std::array<char, 20*1024*1024>; huge_type t; } Jelas itu akan crash pada sebagian besar platform, karena ukuran tumpukan standar biasanya kurang dari 20MB. Sekarang pertimbangkan kode berikut: #include <array> #include <vector> int main() { using huge_type = std::array<char, 20*1024*1024>; std::vector<huge_type> v(1); …

3
Bagaimana saya bisa mendapatkan kedalaman std :: vektor multidimensi pada waktu kompilasi?
Saya memiliki fungsi yang mengambil multidimensi std::vectordan membutuhkan kedalaman (atau jumlah dimensi) untuk dilewatkan sebagai parameter templat. Alih-alih hardcoding nilai ini saya ingin menulis constexprfungsi yang akan mengambil std::vectordan mengembalikan kedalaman sebagai unsigned integernilai. Sebagai contoh: std::vector<std::vector<std::vector<int>>> v = { { { 0, 1}, { 2, 3 } }, { …

2
Perilaku aneh dengan bidang kelas saat menambahkan ke std :: vector
Saya telah menemukan beberapa perilaku yang sangat aneh (pada dentang dan GCC) dalam situasi berikut. Saya punya vektor,, nodesdengan satu elemen, turunan dari kelas Node. Saya kemudian memanggil fungsi nodes[0]yang menambahkan baru Nodeke vektor. Ketika Node baru ditambahkan, bidang objek panggilan direset! Namun, mereka tampaknya kembali normal lagi setelah fungsi …

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.