«c++» etiketlenmiş sorular

Statik olarak yazılmış, serbest biçimli, çok paradigmalı, derlenmiş, genel amaçlı bir programlama dili olan C ++ ile ilgili sorular.

3
GDB bir yürütmeyi nasıl duraklatır
Bildiğiniz gibi, hata ayıklama için yürütmeyi duraklatmak için GDB'yi kullanabilir ve kodumuzda kesme noktaları ayarlayabiliriz. Sorularım, GDB bir işlemi nasıl duraklatır ve i rörneğin kullanarak kayıtların içeriğini görüntülemenize izin verir . Bu kayıtlar diğer işletim sistemleri tarafından sürekli olarak kullanılmıyor mu? nasıl yazılmazlar? Canlı verilerin değil, yalnızca içeriğin anlık görüntüsü …
16 c++  debugging 

2
Bir C ++ yöntemini işaretçi argümanlı bir C işlevine dönüştürmek kabul edilebilir bir kalıp mı?
ESP-32'de C ++ kullanıyorum. Bir zamanlayıcı kaydederken bunu yapmak zorundayım: timer_args.callback = reinterpret_cast<esp_timer_cb_t>(&SoundMixer::soundCallback); timer_args.arg = this; Burada zamanlayıcı çağırır soundCallback. Ve bir görevi kaydederken aynı şey: xTaskCreate(reinterpret_cast<TaskFunction_t>(&SoundProviderTask::taskProviderCode), "SProvTask", stackSize, this, 10, &taskHandle); Böylece yöntem ayrı bir görevde başlatılır. GCC beni bu dönüşümler hakkında her zaman uyarıyor, ancak planlandığı gibi çalışıyor. …
16 c++  c  functions 

3
Bir arayüzde string_view'i ne zaman kullanmalıyım?
Ben mimik a amacıyla tasarlanmış, bir iç kitaplığı kullanıyorum C ++ kütüphanesi önerdi ve bazen son birkaç yıl içinde gördüğüm kendi arayüzü kullanarak değiştirildi std::stringkadar string_view. Bu yüzden yeni arayüze uymak için kodumu saygıyla değiştiriyorum. Ne yazık ki, ne geçmek zorunda bir std :: string parametresi ve std :: string …

5
C ++ 'da istisnaların deyimsel kullanımı
İsocpp.org kural dışı durum SSS durumu Bir fonksiyonun kullanımındaki kodlama hatasını belirtmek için atmayı kullanmayın. Süreci bir hata ayıklayıcıya göndermek veya işlemi kilitlemek ve geliştiricinin hata ayıklaması için çökme dökümünü toplamak için onaylama veya başka bir mekanizma kullanın. Diğer taraftan, standart kütüphane std :: logic_error ve tüm türevlerini tanımlar, ki …
16 design  c++  exceptions 

5
C ++: Sınıf bağımlılıklarına sahip olmalı veya bağımlılıklarına dikkat etmeli mi?
Diyelim ki sınıfı Foobarkullanan (bağlı) bir sınıfım var Widget. İyi günlerde, polimorfik davranış gerekiyorsa Widgetwolud bir alan olarak Foobarveya belki de akıllı bir işaretçi olarak ilan edilir ve yapıcıda başlatılır: class Foobar { Widget widget; public: Foobar() : widget(blah blah blah) {} // or std::unique_ptr<Widget> widget; public: Foobar() : widget(std::make_unique<Widget>(blah …

6
Neden özel üye işlevlerini başlıklara koyarız?
Özel üye değişkenleri neden C ++ başlıklarına koyduğumuzun cevabı, sınıfın büyüklüğünün örneklerin bildirildiği noktalarda bilinmesi gerektiğidir, böylece derleyici yığın hakkında uygun şekilde hareket eden kod üretebilir. Neden özel üyeleri başlıklara koymalıyız? Ancak sınıf tanımında özel işlevleri beyan etmenin herhangi bir nedeni var mı? Alternatif, temelde pimpl deyim olacaktır, ancak gereksiz …
16 c++  history 

5
“Tüm ekip” C ++ özellikleri?
C ++ 'da istisnalar gibi özellikler tüm programınızı etkiler: programınızın tamamında bunları devre dışı bırakabilir veya kodunuz boyunca bunlarla uğraşmanız gerekir. Bir olarak ünlü C ++ Raporuna makale koyar: Sezgisel olarak, kodlama istisnalarının zor kısmı açık atışlar ve yakalamalar değildir. İstisnaları kullanmanın gerçekten zor kısmı, araya giren tüm kodu, keyfi …


8
C ++ neden hala “melez”
Bir Açık ilgili C ++ birçok konuda C ile uyumlu değildir neden sorusuna, bu açıklığa kavuşturulmuştur. Ancak C ++ hala bir "karma" * dildir. Ne yazık ki, birçok programcı hala C ++ 'ı "akışlı ve yerleşik dizeli C" olarak görüyor. Bu gerçekten kötü yazılı kodla sonuçlanır, ne C ++ ne …

9
Devasa Linux / makefile projelerini etkili bir şekilde nasıl çözebilirim?
10 yıldır C ++ 'da Windows uygulamaları geliştiriyorum. Ve son zamanlarda bazı Linux projelerine girmeye başladım ve ne kadar verimsiz olduğuma dayanamıyorum ... Ben hızlı öğreniyorum ve Linux'u bir süredir birincil platform olarak kullanıyorum. Kabuk, işletim sistemi ilkeleri ve GUI ile çok rahat hissediyorum. Ama bu kalkınma söz konusu olduğunda, …
16 c++  linux 

8
C ++ kullanarak ancak dilin belirli özelliklerini kullanmamak için C'ye geçmeli mi?
Boş zamanlarımda hobi olarak bir NES öykünücüsü geliştiriyorum. C ++ kullanıyorum çünkü en çok kullandığım dil, çoğunlukla biliyorum ve çoğunlukla seviyorum. Ama şimdi projeye biraz ilerledim, C ++ 'ın neredeyse tüm spesifik özelliklerini kullanmadığımı fark ettim ve bunu düz C'de yapabilir ve aynı sonucu elde edebilirdim. Şablon, operatör aşırı yüklenmesi, …
16 c++  c 

3
Boost kütüphanelerini kullanmayı öğrenmeye nereden başlamalı?
Boost, üzerinde çalıştığım projede kısa süre önce kullanıma sunuldu ve bu konuda fazla deneyimim yok. Kütüphane o kadar çok parçaya ve özelliğe sahip ki, onu öğrenmeye nereden başlayacağımı bilmek zor - özellikle de üretim kodu yaparken öğrenmeye çalışacağım için (bu yüzden beni çok yavaşlatamaz). Birisi genel olarak çok yararlı olan …
16 c++  boost 


5
Birisi bir GUI'nin nasıl çalıştığını ve ne zaman kullanmaya başlayacağımı açıklayabilir mi? [kapalı]
Şu anda olduğu gibi, bu soru Soru-Cevap formatımıza uygun değil. Yanıtların gerçekler, referanslar veya uzmanlık tarafından desteklenmesini bekliyoruz, ancak bu soru muhtemelen tartışma, tartışma, oylama veya genişletilmiş tartışma talep edecektir. Bu sorunun çözülebileceğini ve muhtemelen yeniden açılabileceğini düşünüyorsanız, yardım için yardım merkezini ziyaret edin . 7 yıl önce kapalı . …
16 c++  gui 

4
G ++ 'da -pedantic flag kullanıp kullanmamak?
C ++ öğreniyorum ve pratik için Linux üzerinde g ++ kullanıyorum. Programcı olarak çalışan insanların g ++ -pedantic flag kullanıp kullanmadığını ve gerçek dünyada önemini bilmek istiyorum. Peki ya diğer derleyiciler, buna da izin veriyorlar mı? Bu fiili bir standart haline geldi mi? Çünkü yazar nerede const olmayan ifade dizi …
16 c++  gcc 

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.