«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.

7
0 ile -0 arasında ayrım yapmak mümkün mü?
O tam sayı değerlerini biliyoruz 0ve -0esasen aynıdır. Ama aralarında ayrım yapmanın mümkün olup olmadığını merak ediyorum. Örneğin, bir değişkenin atanıp atanmadığını nasıl anlarım -0? bool IsNegative(int num) { // How ? } int num = -0; int additinon = 5; num += (IsNegative(num)) ? -addition : addition; -0Hafızaya kaydedilen …

10
C ++ sınıfı bir bellek yapısında nasıl "boşluk bırakıcı" oluşturabilirim?
Sorun Bir de düşük düzeyde çıplak metal gömülü bağlamda, bir erişim, bellek konumu için kullanıcı yasaklamış, C ++ yapı içinde ve herhangi bir isim vermeden, bellek boş bir alan yaratmak istiyoruz. Şu anda, bunu uint32_t :96;üç sözcüğün yerini alabilecek çirkin bir bitfield koyarak başardım , ancak bu oldukça meşru olan …


2
JPEG of Death güvenlik açığı nasıl çalışır?
Windows XP ve Windows Server 2003'te GDI + 'ya karşı üzerinde çalıştığım bir proje için ölüm JPEG olarak adlandırılan daha eski bir istismar hakkında okuyorum . İstismar aşağıdaki bağlantıda iyi açıklanmıştır: http://www.infosecwriters.com/text_resources/pdf/JPEG.pdf Temel olarak, bir JPEG dosyası, (muhtemelen boş) bir açıklama alanı ve COM boyutunu içeren iki baytlık bir değer …
94 c++  security  memcpy  malware 


17
Tüm aralıkta eşit olarak rastgele sayılar oluşturun
Belirli bir aralıkta [maks; min] rastgele sayılar üretmem gerekiyor. Ayrıca, rastgele sayılar belirli bir noktaya yerleştirilmemeli, aralık boyunca eşit olarak dağıtılmalıdır. Şu anda şu şekilde oluşturuyorum: for(int i=0; i<6; i++) { DWORD random = rand()%(max-min+1) + min; } Testlerimden rastgele sayılar yalnızca bir nokta etrafında üretiliyor. Example min = 3604607; …
94 c++  random 


8
C ++ 'da bir dizeyi bölmek neden Python'dan daha yavaş?
Biraz hız kazanmak ve paslı C ++ becerilerimi geliştirmek için bazı kodları Python'dan C ++ 'ya dönüştürmeye çalışıyorum. Stdin'den satırları okurken bir naif uygulama (bkz ++ çok daha hızlı C'nin Python iken Dün şok oldu bu ). Bugün nihayet C ++ 'da bir dizeyi sınırlayıcıları birleştirerek (python split () ile …

7
GCC ile C / C ++: Yürütülebilir / kitaplığa kaynak dosyalarını statik olarak ekleyin
GCC'yi kullanarak herhangi bir kaynak dosyasını statik olarak yürütülebilir veya paylaşılan kitaplık dosyasına nasıl derleyeceğine dair bir fikri olan var mı? Örneğin, asla değişmeyen (ve değiştirirlerse, yine de dosyayı değiştirmek zorunda kalacağım) ve dosya sisteminde yer almalarını istemeyen görüntü dosyaları eklemek istiyorum. Bu mümkünse (ve bence Windows için Visual C …

1
Goto sızıntı değişkenleri kullanılacak mı?
gotoYıkıcıları ve nesneleri çağırmadan kod parçalarının üzerinden atladığı doğru mu? Örneğin void f() { int x = 0; goto lol; } int main() { f(); lol: return 0; } Olmaz xsızdırılmış olabilir?
94 c++  goto 

3
Gelecekteki paylaşılan kitaplıklarda bir komut bayrağıyla kesme noktaları nasıl ayarlanır
--commandBayrağı kullanarak bir gdb oturumunu otomatikleştirmeye çalışıyorum . Paylaşılan bir kitaplıkta (DLL'nin Unix eşdeğeri) bir işlev için bir kesme noktası ayarlamaya çalışıyorum. Cmds.gdb'm şuna benzer: set args /home/shlomi/conf/bugs/kde/font-break.txt b IA__FcFontMatch r Ancak şunu alıyorum: shlomi: ~ / progs / bugs-external / kde / font kırma $ gdb --command = cmds.gdb …
94 c++  c  linux  unix  gdb 

8
İşlev işaretçisi olarak yakalamalara sahip C ++ lambda
C ++ lambdas ve bunların işlev işaretçilerine örtük dönüşümleriyle oynuyordum. Başlangıç ​​örneğim onları ftw işlevi için geri arama olarak kullanıyordu. Bu beklendiği gibi çalışıyor. #include <ftw.h> #include <iostream> using namespace std; int main() { auto callback = [](const char *fpath, const struct stat *sb, int typeflag) -> int { cout …

5
C ++ uygulamasında assert () kullanmak kötü bir uygulama mı?
Sürüm yapılarının performansını etkilemeden hata ayıklamayı kolaylaştırmak için C ++ koduma çok sayıda iddia ekleme eğilimindeyim. Şimdi, assertakılda C ++ mekanizmaları olmadan tasarlanmış saf bir C makrosu. Öte yandan C ++ std::logic_error, programın mantığında (dolayısıyla adı) bir hata olduğu durumlarda atılması amaçlanan tanımlar . Bir örnek fırlatmak sadece mükemmel, daha …

3
Gsl kitaplığındaki span ve array_view arasındaki fark nedir?
Son zamanlarda yapılan birkaç konferans sunumunda Bjarne Stroustrup ve diğerlerinin C ++ için yeni kodlama yönergelerinden ve bunları destekleyen bazı türlerden bahsettiğini duydum. Spesifik olarak, bir fonksiyonun parametresi yerine örneğinispan<T>(T* p, int n) hatırlıyorum (konuşmaya saat 32: 00'da); ama kullanma önerisini de hatırlıyorum array_view<T>. Bunlar iki alternatif ama aynı konsept …

2
bir liste <T> nesnesini diğerine nasıl eklenir
C ++ 'da, iki list&lt;T&gt;nesnem var Ave Btüm üyelerini Bsonuna eklemek istiyorum A. Birkaç farklı kaynağı araştırdım ve basit bir çözüm (ei A.append(B);) bulamadım ve bu beni biraz şaşırttı. Bunu yapmanın en iyi yolu nedir? Olduğu gibi, bundan sonra B'yi umursamıyorum (sonraki satırda silinir) bu yüzden daha iyi performans için …
94 c++  list  stl 

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.