«c++» etiketlenmiş sorular

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

4
İleri bildirim ve dahil etme
Reduce the number of #include files in header files. It will reduce build times. Instead, put include files in source code files and use forward declarations in header files. Bunu burada okudum. http://www.yolinux.com/TUTORIALS/LinuxTutorialC++CodingStyle.html . Dolayısıyla, başlık dosyasındaki bir sınıfın (A sınıfı) bir sınıfın (B sınıfı) gerçek tanımını kullanması gerekmediği yazıyor. …
18 c++  coding-style 

6
.NET çerçevesiyle C ++ kullanmak mümkün müdür?
GUI programlama hakkında C # ve C ++ 'da birçok yorum okudum. Ve Microsoft'un .NET çerçevesinin GUI programlama için güçlü olduğunu fark ettim. Peki C ++ ve .NET framework kullanmak mümkün mü? C ++ güçlü bir dil olduğu için harika bir kombinasyon olacağını düşünüyorum ve okuduğum gibi Windows'ta GUI programlama …
18 c++  .net 

4
C ++ ile lexer yazma
C ++ 'da bir lexer yazma konusunda iyi kaynaklar nelerdir (kitaplar, öğreticiler, belgeler), bazı iyi teknikler ve uygulamalar nelerdir? İnternete baktım ve herkes lex gibi bir lexer jeneratörü kullanmayı söylüyor. Bunu yapmak istemiyorum, elle bir lexer yazmak istiyorum.
18 c++  compiler  lexer 

3
Nakliye test kodu. Neden istemiyorsun?
Test kodunu bir ürünle birlikte göndermek istiyorum. Özellikle, programımızın bir kopyası olan herkesin "kendi kendini sınama" düğmesine basabilmesi veya komut satırında kendi kendini sınaması ve tüm birim paketinden geçebilmesi için bir seçenek sağlayın | uyum testleri. Çoğunlukla alanda keşfedilen sorunların hatalarını ayıklamak için bunu yapmak istiyorum, bu yüzden son kullanıcıdan …

5
Numaralamalar kırılgan arayüzler yaratıyor mu?
Aşağıdaki örneği düşünün. ColorChoice enum öğesinde yapılan tüm değişiklikler tüm IWindowColor alt sınıflarını etkiler. Numaralamalar kırılgan arayüzlere neden olma eğiliminde mi? Daha polimorfik esnekliğe izin vermek için bir numaradan daha iyi bir şey var mı? enum class ColorChoice { Blue = 0, Red = 1 }; class IWindowColor { public: …

2
Bitişik dize değişmezlerini bitiştirirken
C ve C ++ bitişik dize değişmezlerini tek dize değişmezleri olarak derler. Örneğin bu: "Some text..." "and more text" şuna eşittir: "Some text...and more text" C # veya Java gibi diğer C-aile dillerinde, bu bir sözdizimi hatasıdır (BTW mükemmel bir şekilde iyidir). C ve C ++ 'ın bunu yapmasının mantığı …

4
Fonksiyonlarla ilgili bu cevaplardan hangisi yanlıştır?
Bazı uzun derlemeler yaparken ODesk C ++ genel testi yapmaya karar verdi ve bu soruya rastladı. Yanılmıyorsam, ifadeler (veya eksiklikleri) göz önüne alındığında, bunların hepsi doğru olabilir. a. int Foo() { } int Foo(int bar) { } b. return void;Anlamsal olarak yanlış olur , ancak fonksiyonlar açıkçavoid dönüş türleri olabilir. …
17 c++ 


5
C ++ 'da her şey için nesneleri (ilkel türler yerine) kullanmak anlamlı olur mu?
Üzerinde çalıştığım yeni bir proje sırasında, şöyle görünen bir çok işlevi kullanmak zorunda kaldım: static bool getGPS(double plane_latitude, double plane_longitude, double plane_altitude, double plane_roll, double plane_pitch, double plane_heading, double gimbal_roll, double gimbal_pitch, double gimbal_yaw, int target_x, int target_y, double zoom, int image_width_pixels, int image_height_pixels, double & Target_Latitude, double & Target_Longitude, …

3
OpenGL için grafik kodunda en etkili otomatik testi nasıl birim olarak test ederdiniz?
C ++ ile OpenGL üzerine bir oyun ve beraberindeki grafik motoru yazıyorum. Ben de iyi kodlama süreçleri ve otomatik test hayranıyım. Grafik kodu + testi oldukça çıktı gibi görünüyor, çünkü çıktı genellikle sadece görsel veya çok görsel olarak odaklı. Örneğin, ekran bayt byte baytına işlenen ham görüntü akışını analiz ettiğinizi …

4
C ++ 'da hareket yapıcılarının motivasyonu ve kullanımı
Son zamanlarda C ++ 'ta hareket yapıcılar hakkında okuyordum (örneğin buraya bakın ) ve nasıl çalıştıklarını ve ne zaman kullanmaları gerektiğini anlamaya çalışıyorum. Anladığım kadarıyla, büyük nesnelerin kopyalanmasından kaynaklanan performans sorunlarını hafifletmek için bir hareket oluşturucu kullanılır. Wikipedia sayfası şöyle diyor: "C ++ 03 ile ilgili kronik bir performans sorunu, …

4
C ++ ile `using` kullanın veya bundan kaçının?
ADL nedeniyle farklı semantikleri indirim yapmak, genellikle nasıl kullanmalıyım usingve neden? Duruma bağlı mıdır (örneğin, #included'ye karşılık gelen başlık, kaynak dosyaya karşı değil)? Ayrıca, ben tercih etmeliyiz ::std::yoksa std::? Ad alanı düzeyi using namespace: using namespace std; pair<string::const_iterator, string::const_iterator> f(const string &s) { return make_pair(s.begin(), s.end()); } Tamamen açık olmak: …
17 c++  namespace 

4
C ++ Standardı neden ifade şablonlarını benimsemedi?
Bir teknik olarak ifade şablonlarının 1998'deki orijinal C ++ Standardından önce önemli ölçüde keşfedildiğini anladım. Neden std::stringve akışlar gibi çeşitli standart sınıfların performansını iyileştirmek için kullanılmadılar ?
17 c++  history 

13
Tekrarlanan kod yazmayı kolaylaştırmak için #define kullanımı uygun mudur?
#Define komutunun kodlamayı basitleştirmek için tam kod satırlarını tanımlamak için kullanmanın iyi veya kötü programlama uygulaması olup olmadığı konusunda herhangi bir görüş var mı? Örneğin, bir grup kelimeyi birlikte yazdırmam gerekirse, yazarak rahatsız olurdum << " " << Bir cout deyiminde kelimeler arasına boşluk eklemek için. Sadece yapabilirdim #define pSpace …

2
Std :: bitset üzerinden c-tarzı bit manipülasyonunun herhangi bir avantajı var mı?
Neredeyse sadece C ++ 11 / 14'te çalışıyorum ve genellikle böyle bir kod gördüğümde cringe: std::int64_t mArray; mArray |= someMask << 1; Bu sadece bir örnek; Genel olarak biraz akıllı manipülasyondan bahsediyorum. C ++ 'ta gerçekten bir anlamı var mı? Yukarıda belirtilenler, aşağıdakileri std::bitsetyapmanıza olanak tanıyan zihin çözgü ve hataya …

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.