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

3
Const void nedir?
Açıklama std::is_voidşunları belirtir: T tipi void, const void, volatile void veya const volatile void ise, true değerine eşit üye sabit değerini sağlar . O zaman ne olabilir const voidveya a volatile void? Bu cevap , const voiddönüş türünün geçersiz olacağını belirtir (ancak VC ++ 2015'te derlenir) const void foo() { …
90 c++  c++11  c++14 


1
Garantili kopya seçimi nasıl çalışır?
2016 Oulu ISO C ++ Standartları toplantısında, basitleştirilmiş değer kategorileri aracılığıyla Garantili kopya seçimi adlı bir teklif , standartlar komitesi tarafından C ++ 17'ye oylandı. Garantili kopya seçimi tam olarak nasıl çalışır? Kopya seçimine zaten izin verilen bazı durumları kapsıyor mu, yoksa kopya seçimini garanti etmek için kod değişiklikleri gerekli …



2
Sadece bir üyeyle sendika kullanmanın amacı nedir?
Seastar kaynak kodunu okurken tx_side, sadece bir üyesi olan bir birlik yapısı olduğunu fark ettim . Belli bir problemle başa çıkmak hack mi? Bilginize, tx_sideaşağıdaki yapıyı yapıştırıyorum : union tx_side { tx_side() {} ~tx_side() {} void init() { new (&a) aa; } struct aa { std::deque<work_item*> pending_fifo; } a; } …
89 c++  c++14  unions 

6
Global lambdaları kullanmamak için bir sebep var mı?
Kendi içinde yakalamayan bir lambda kullanan bir fonksiyonumuz vardı, örneğin: void foo() { auto bar = [](int a, int b){ return a + b; } // code using bar(x,y) a bunch of times } Şimdi lambda tarafından uygulanan işlevsellik başka bir yerde gerekli hale geldi, bu yüzden lambda'yı foo()küresel / …
89 c++  lambda 

4
1.0'a en yakın çift nedir, bu 1.0 değil mi?
1.0'a en yakın olan, ancak aslında 1.0 olmayan iki katını programlı olarak elde etmenin bir yolu var mı? Bunu yapmanın bir hileli yolu, iki katı aynı büyüklükte bir tamsayıya hatırlamak ve sonra bir çıkarmaktır. IEEE754 kayan nokta biçimlerinin çalışma şekli, bu, kesirli bölümü tüm sıfırlardan (1.000000000000) hepsine (1.111111111111) değiştirirken üssün …

8
Tanımlanmamış davranışa sahip dalların erişilemez olduğu ve ölü kod olarak optimize edilebileceği varsayılabilir mi?
Şu ifadeyi düşünün: *((char*)NULL) = 0; //undefined behavior Açıkça tanımlanmamış davranışa neden olur. Belirli bir programda böyle bir ifadenin varlığı, tüm programın tanımsız olduğu veya davranışın yalnızca kontrol akışı bu ifadeye ulaştığında tanımsız hale geldiği anlamına mı gelir? Kullanıcının numarayı hiç girmemesi durumunda aşağıdaki program iyi tanımlanmış olur 3mu? while …

10
önemli hata LNK1104: 'libboost_system-vc110-mt-gd-1_51.lib' dosyası açılamıyor
Görünüşe göre bunu çalıştıramıyorum websocket++Kitaplıklara ihtiyaç duyan ( kitaplığa bağlı ) basit bir konsol uygulaması yaptım Boost.. ama derlemeye çalıştığımda şunu elde ediyorum: önemli hata LNK1104: 'libboost_system-vc110-mt-gd-1_51.lib' dosyası açılamıyor Bununla birlikte, lib'i oluşturan bjam'i yaptım ve lib'lerin (boost_root)/stage/libsyolunu derleyiciye bağladım C++/Additionnals includes. Ben de bakarsak (boost_root)/stage/libsdosyada libboost_system-vc110-mt-gd-1_51.libyoktur. Onun libboost_system-vc110-mt-sgd-1_51.libyerine denir …
89 c++  boost 


3
Varsayılan, değer ve sıfır başlatma karmaşası
Değer & varsayılan & sıfır başlatma konusunda kafam çok karışık. ve özellikle farklı standartlar C ++ 03 ve C ++ 11 (ve C ++ 14 ) için devreye girdiklerinde . Burada gerçekten iyi bir cevabı alıntılamakta ve genişletmeye çalışıyorum Value- / Default- / Zero- Init C ++ 98 ve C …
89 c++  c++11  c++14  c++03  c++98 

5
Paylaşılan işaretçileri bağımsız değişken olarak aktarma
Paylaşılan bir işaretçiye sarılmış bir nesne bildirirsem: std::shared_ptr<myClass> myClassObject(new myClass()); sonra bunu bir yönteme argüman olarak aktarmak istedim: DoSomething(myClassObject); //the called method void DoSomething(std::shared_ptr<myClass> arg1) { arg1->someField = 4; } Yukarıdakiler, paylaşılan_pt'nin referans sayısını artırıyor ve her şey yolunda mı? Yoksa sallanan bir işaretçi mi bırakıyor? Hala bunu yapmanız gerekiyor …

7
Neden bir std :: vector <AbstractClass> bildiremiyoruz?
C # 'da geliştirmek için epey bir zaman harcadıktan sonra, onu bir arayüz olarak kullanmak amacıyla soyut bir sınıf bildirirseniz, çocuk sınıflarının örneklerini saklamak için bu soyut sınıfın bir vektörünü başlatamayacağınızı fark ettim. #pragma once #include &lt;iostream&gt; #include &lt;vector&gt; using namespace std; class IFunnyInterface { public: virtual void IamFunny() = …


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.