«stdvector» etiketlenmiş sorular

Standart Kitaplığın parçası olarak tanımlanan bir dizi türü.


18
Bir vektörün içeriği nasıl yazdırılır?
C ++ bir vektör içeriğini yazdırmak istiyorum, İşte ne var: #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); char firstsquare …
282 c++  vector  output  stdvector  cout 


8
Std :: vector nesneleri bir push_back ile kopyalıyor mu?
Valgrind ile çok fazla araştırma yapıldıktan sonra, std :: vector'un push_back yapmak istediğiniz bir nesnenin bir kopyasını oluşturduğu sonucuna vardım. Bu gerçekten doğru mu? Vektör, kopya olmadan bir nesnenin referansını veya işaretçisini tutamaz mı ?! Teşekkürler
169 c++  stl  stdvector 

9
C ++ valarray ve vektör
Vektörleri çok seviyorum. Şık ve hızlılar. Ama bir valarray denen şeyin var olduğunu biliyorum. Neden vektör yerine valarray kullanayım? Valarrailerin bazı sözdizimsel şekerleri olduğunu biliyorum, ama bunun dışında ne zaman yararlılar?

6
C ++, vektöre kopyala
Kopyalamam std::setgereken yer 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 Sorun nerede?
149 c++  copy  stdvector  stdset 

7
Bir çift vektörünü çiftin ikinci elemanına göre nasıl sıralayabilirim?
Bir çift vektörüm varsa: std::vector<std::pair<int, int> > vec; Çiftin ikinci unsuruna göre listeyi artan sırada sıralamanın kolay bir yolu var mı? Ben işi yapacak biraz fonksiyon nesnesi yazabilirsiniz biliyorum ama mevcut parçalarını kullanmak için bir yol yoktur STL ve std::lessdoğrudan işi yapmak için? DÜZENLEME: Sıralamak için üçüncü bağımsız değişkene geçmek …
133 c++  stl  stdvector 

8
C ++ 'da std :: vektör döndürmenin verimli yolu
Ne kadar veri kopyalanır, bir işlevde bir std :: vektörü döndürülürken ve std :: vektörü serbest depoya (yığın üzerine) yerleştirmek ve bunun yerine bir işaretçi döndürmek ne kadar büyük bir optimizasyon olacaktır: std::vector *f() { std::vector *result = new std::vector(); /* Insert elements into result */ return result; } şundan …

6
Std :: vector nasıl karıştırılır?
Bir std::vectorC ++ 'da karıştırmak için genel, yeniden kullanılabilir bir yol arıyorum . Şu anda bunu böyle yapıyorum, ancak bunun çok verimli olmadığını düşünüyorum çünkü bir ara diziye ihtiyaç duyuyor ve öğe türünü bilmesi gerekiyor (bu örnekte DeckCard): srand(time(NULL)); cards_.clear(); while (temp.size() > 0) { int idx = rand() % …
99 c++  shuffle  stdvector 

8
vektör :: at ve vektör :: operatörü []
Bunun , / [] operatör hızında C ++ Vector veya :: std :: vector :: at () ile operatör [] << arasındaki benzer sorularda tartışılan sınır kontrolünden at()daha yavaş olduğunu biliyorum << şaşırtıcı sonuçlar !! 5 ila 10 kat daha yavaş / daha hızlı! . Sadece yöntemin ne işe yaradığını …
98 c++  stl  stdvector 

4
Java, dizilerle C ++ 'da std :: vector'den 8 kat daha hızlıdır. Neyi yanlış yaptım?
Boyutlarını asla değiştirmeyen birkaç büyük diziye sahip aşağıdaki Java koduna sahibim. Bilgisayarımda 1100 ms'de çalışıyor. Aynı kodu C ++ 'da uyguladım ve kullandım std::vector. Bilgisayarımda aynı kodu çalıştıran C ++ uygulamasının süresi 8800 ms'dir. Bunu yavaş yapması için neyi yanlış yaptım? Temel olarak kod şunları yapar: for (int i = …

2
std :: dynarray vs std :: vektör
C ++ 14 sunar std::dynarray: std :: dynarray, dizileri yapım aşamasında sabit olan ve nesnenin ömrü boyunca değişmeyen bir boyutta kapsülleyen bir sıra kapsayıcısıdır. std::dynarrayile aynı şekilde çalışma zamanında tahsis edilmelidir std::vector. Öyleyse daha dinamik (ve aynı zamanda yeniden boyutlandırılabilir) std::dynarraykullanabildiğimiz zamanın faydaları ve kullanımı std::vectornelerdir?
84 c++  stdvector 

10
Ham belleğe görünüm olarak std :: vector kullanımı
Bir noktada bana tamsayılar dizisi ve bir boyut için ham bir işaretçi veren harici bir kütüphane kullanıyorum. Şimdi std::vectorbu değerlere ham işaretçilerle erişmek yerine yerinde erişmek ve değiştirmek için kullanmak istiyorum . İşte konuyu açıklayan yapay bir örnek: size_t size = 0; int * data = get_data_from_library(size); // raw data …
71 c++  c++11  vector  stdvector 

3
std :: vector (ab) otomatik depolama kullanır
Aşağıdaki snippet'i düşünün: #include <array> int main() { using huge_type = std::array<char, 20*1024*1024>; huge_type t; } Açıktır ki, varsayılan yığın boyutu genellikle 20 MB'den küçük olduğundan, çoğu platformda çökecektir. Şimdi aşağıdaki kodu göz önünde bulundurun: #include <array> #include <vector> int main() { using huge_type = std::array<char, 20*1024*1024>; std::vector<huge_type> v(1); } …

3
Derleme zamanında çok boyutlu bir std :: vektörünün derinliğini nasıl alabilirim?
Çok boyutlu alır std::vectorve bir şablon parametresi olarak geçirilmesi için derinlik (veya boyut sayısı) gerektiren bir işlevi var . Bu değeri kodlamak yerine derinliği bir değer olarak constexpralıp std::vectordöndürecek bir fonksiyon yazmak istiyorum unsigned integer. Örneğin: std::vector<std::vector<std::vector<int>>> v = { { { 0, 1}, { 2, 3 } }, { …

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.