«c++» etiketlenmiş sorular

C ++ genel amaçlı bir programlama dilidir. Başlangıçta C'nin bir uzantısı olarak tasarlanmıştır ve benzer bir sözdizimine sahiptir, ancak şimdi tamamen farklı bir dildir. Bir C ++ derleyicisiyle derlenecek kod (sorulacak) ile ilgili sorular için bu etiketi kullanın. Belirli bir standart revizyon [C ++ 11], [C ++ 14], [C ++ 17] veya [C ++ 20] vb. İle ilgili sorular için sürüme özgü bir etiket kullanın.

26
Hangi C ++ Standart Kitaplık sarmalayıcı işlevlerini kullanıyorsunuz?
Bu sabah sorulan bu soru , C ++ Standart Kitaplığı'nda eksik olduğunu düşündüğünüz özelliklerin neler olduğunu ve boşlukları sarmalayıcı işlevleriyle nasıl doldurduğunuzu merak etmeme neden oldu. Örneğin, kendi yardımcı kitaplığım vektör ekleme için şu işleve sahiptir: template <class T> std::vector<T> & operator += ( std::vector<T> & v1, const std::vector <T> …
81 c++ 

6
Bjarne bu ADL örneği hakkında yanılıyor mu, yoksa benim bir derleyici hatası mı var?
The C ++ Programming Language, 4th Edition ( Bjarne Stroustrup tarafından ) hakkında okuyorumbağımsız değişkene bağlı arama. İşte alıntı (26.3.6, Aşırı agresif ADL): Bağımsız değişkene bağlı arama (genellikle ADL olarak adlandırılır) ayrıntılardan kaçınmak için çok kullanışlıdır (14.2.4). Örneğin: #include <iostream> int main() { std::cout << "Hello, world" << endl; // …

6
Enum sabitleri C ve C ++ 'da farklı davranıyor
Bunu neden yapar: #include <stdio.h> #include <limits.h> #include <inttypes.h> int main() { enum en_e { en_e_foo, en_e_bar = UINT64_MAX, }; enum en_e e = en_e_foo; printf("%zu\n", sizeof en_e_foo); printf("%zu\n", sizeof en_e_bar); printf("%zu\n", sizeof e); } 4 8 8C ve 8 8 8C ++ olarak yazdırın (4 baytlık bir platformda)? UINT64_MAXAtamanın …
81 c++  c 


6
Hızlı dikdörtgenden dikdörtgene kesişim
2 dikdörtgenin kesişip kesişmediğini test etmenin hızlı yolu nedir? İnternette bir arama bu tek satırlık (WOOT!) İle geldi, ancak Javascript'te nasıl yazılacağını anlamıyorum, eski bir C ++ formunda yazılmış gibi görünüyor. struct { LONG left; LONG top; LONG right; LONG bottom; } RECT; bool IntersectRect(const RECT * r1, const RECT …

6
const char * ve char const * - aynı mı?
Benim anlayışıma göre, constdeğiştiriciler sağdan sola okunmalıdır. Bundan anlıyorum: const char* char öğeleri değiştirilemeyen bir göstericidir, ancak işaretçinin kendisi yapabilir ve char const* mutablekarakterlere sabit bir göstericidir . Ancak aşağıdaki kod için aşağıdaki hataları alıyorum: const char* x = new char[20]; x = new char[30]; //this works, as expected x[0] …


10
C ++ 'da global sabiti tanımlama
Birkaç kaynak dosyada görünmesi için C ++ 'da bir sabit tanımlamak istiyorum. Bunu bir başlık dosyasında tanımlamanın aşağıdaki yollarını hayal edebiliyorum: #define GLOBAL_CONST_VAR 0xFF int GLOBAL_CONST_VAR = 0xFF; Değeri döndüren bazı işlevler (örneğin int get_GLOBAL_CONST_VAR()) enum { GLOBAL_CONST_VAR = 0xFF; } const int GLOBAL_CONST_VAR = 0xFF; extern const int GLOBAL_CONST_VAR; …
81 c++ 

4
İki türde bir değişken bildirmek: "int char"
Ben bir C ++ acemisiyim ve Bjarne Stroustrup'un Programlama: İlkeler ve C ++ Kullanarak Uygulama okuyorum . 3.9.2 Güvenli olmayan dönüştürmelerle ilgili bölümde yazar, Başlatıcı bir tamsayı değişmez değeri olduğunda, derleyici gerçek değeri kontrol edebilir ve daraltma anlamına gelmeyen değerleri kabul edebilir: int char b1 {1000}; // error: narrowing (assuming …

8
Ld'yi altınla değiştirmek - herhangi bir deneyim?
goldBunun yerine kullanmaya çalışan oldu ldmu? gold daha hızlı olacağını vaat ediyorld , bu nedenle büyük C ++ uygulamaları için test döngülerini hızlandırmaya yardımcı olabilir, ancak ld yerine drop-in yerine kullanılabilir mi? Can gcc/ g++doğrudan çağrı gold.? Bilinen herhangi bir hata veya sorun var mı? goldBir süredir GNU binutillerinin bir …


8
64 bit tam sayıdaki paketlenmiş 8 bit tam sayıları paralel olarak 1, donanım SIMD'siz SWAR çıkarma
Ben 8 elementli paketlenmiş 8 bitlik tamsayılar dizisi olarak yorumladığım 64 bitlik bir tamsayı varsa. Ben 1başka bir elemanın sonucunu etkileyen bir eleman sonucu olmadan taşma işlerken her paketli tamsayı sabit çıkarmak gerekir . Şu anda bu kodu var ve çalışıyor ama paralel olarak her paketlenmiş 8-bit tamsayı çıkarma yapar …
77 c++  c  bit-manipulation  simd  swar 

7
0 değerini ikame olarak NULL kullanabilir miyim?
NULLİşaretçiyi, değerinin yerine kullanmam için kullanabilir miyim 0? Yoksa bununla ilgili yanlış bir şey mi var? Mesela, örneğin: int i = NULL; yedek olarak: int i = 0; Deney olarak aşağıdaki kodu derledim: #include <stdio.h> int main(void) { int i = NULL; printf("%d",i); return 0; } Çıktı: 0 Nitekim bana …

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
Çoklu iş parçacığı programı en iyi duruma getirilmiş durumda kalmış ancak normalde -O0'da çalışıyor
Basit bir çok iş parçacığı içeren programlar yazdım: static bool finished = false; int func() { size_t i = 0; while (!finished) ++i; return i; } int main() { auto result=std::async(std::launch::async, func); std::this_thread::sleep_for(std::chrono::seconds(1)); finished=true; std::cout<<"result ="<<result.get(); std::cout<<"\nmain thread id="<<std::this_thread::get_id()<<std::endl; } Bu hata ayıklama modunda normal davranır Görsel stüdyoda veya -O0içinde …

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.