«std» etiketlenmiş sorular

C ++ Standart Kitaplığı ve ad alanı. [C ++] ile birlikte kullanın.

30
Neden “namespace std kullanılıyor”; kötü uygulama olarak mı değerlendirildi?
Başkaları tarafından using namespace std;kod yazmanın yanlış olduğunu std::coutve std::cinbunun yerine doğrudan kullanmam gerektiğini söyledim . Neden using namespace std;kötü bir uygulama olarak kabul edilir? Verimsiz mi yoksa belirsiz değişkenler ( stdad alanındaki bir işlevle aynı adı paylaşan değişkenler) bildirme riski var mı? Performansı etkiler mi?


5
“STL” ve “C ++ Standart Kütüphane” arasındaki fark nedir?
Birisi bu makaleyi dikkat çektiğimde , STL teriminin SGI STL'den alınan parçalar yerine tüm C ++ Standart Kütüphanesine atıfta bulunmak için yanlış kullanıldığını iddia ediyorum . (...) hala çok az insanın (SGI'de tasarlanan) STL'yi kullanmasına rağmen "STL" yi ifade eder. C ++ Standart Kütüphanesinin bölümleri STL'nin bölümlerine dayanıyordu ve bu …

12
Bir std :: listesinden öğeleri yineleyerek kaldırabilir misiniz?
Şuna benzeyen bir kod var: for (std::list<item*>::iterator i=items.begin();i!=items.end();i++) { bool isActive = (*i)->update(); //if (!isActive) // items.remove(*i); //else other_code_involving(*i); } items.remove_if(CheckItemNotActive); Listeyi tekrar yürümekten kaçınmak için etkin olmayan öğeleri güncelledikten hemen sonra kaldırmak istiyorum. Ancak yorum satırları eklerseniz, i++"Liste yineleyici artırılmaz değil" aldığımda bir hata alıyorum . For ifadesinde artmayan …
239 c++  list  std 

4
Neden emplace_back yerine push_back kullanmalıyım?
C ++ 11 vektörleri yeni işleve sahiptir emplace_back. push_backKopyalardan kaçınmak için derleyici optimizasyonlarından farklı olarak , emplace_backyerinde bir nesne oluşturmak için bağımsız değişkenleri doğrudan yapıcıya göndermek için mükemmel yönlendirme kullanır. Bana öyle emplace_backgeliyor ki her şey push_backyapabiliyor, ama bazen bunu daha iyi yapacak (ama asla kötü olmayacak). Hangi sebebi kullanmam …
232 c++  c++11  std 

3
cout std üyesi değil
Ben mulitple dosyaları ve başlık dosyaları vb kullanarak pratik yapıyorum. Bu yüzden iki sayı alır ve sonra onları ekler bu proje var. Gayet basit. İşte dosyalarım: main.cpp #include <iostream> #include "add.h" int main() { int x = readNumber(); int y = readNumber(); writeAnswer(x + y); return(0); } io.cpp int readNumber() …
200 c++  io  std  member  cout 


16
C dosya satır satır okuma
Bu işlevi bir dosyadan bir satır okumak için yazdım: const char *readLine(FILE *file) { if (file == NULL) { printf("Error: file pointer is null."); exit(1); } int maximumLineLength = 128; char *lineBuffer = (char *)malloc(sizeof(char) * maximumLineLength); if (lineBuffer == NULL) { printf("Error allocating memory for line buffer."); exit(1); } …
184 c  file-io  line  std 

16
Özel C ++ ayırıcılarının çekici örnekleri?
std::allocatorÖzel bir çözüm lehine hendek için gerçekten iyi nedenler nelerdir? Doğruluk, performans, ölçeklenebilirlik vb. İçin kesinlikle gerekli olan herhangi bir durumla karşılaştınız mı? Gerçekten akıllı örnekler var mı? Özel ayırıcılar her zaman çok fazla ihtiyaç duymadığım Standart Kütüphane'nin bir özelliği olmuştur. Ben sadece burada SO üzerinde varlıklarını haklı çıkarmak için …

7
std :: string ile printf?
Anladığım kadarıyla, bu ad stringalanının bir üyesi, stdneden aşağıdakiler oluyor? #include <iostream> int main() { using namespace std; string myString = "Press ENTER to quit program!"; cout << "Come up and C++ me some time." << endl; printf("Follow this command: %s", myString); cin.get(); return 0; } Program her çalıştığında, myStringyukarıdaki …
157 c++  string  namespaces  printf  std 

8
Yineleme sırasında std :: set'den eleman silme
Bir kümeden geçmem ve önceden tanımlanmış bir kriteri karşılayan öğeleri kaldırmam gerekiyor. Bu yazdığım test kodu: #include <set> #include <algorithm> void printElement(int value) { std::cout << value << " "; } int main() { int initNum[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; std::set<int> …



7
stdlib ve C'de renkli çıktı
Renkli çıktı gerektiren basit bir uygulama yapıyorum. Çıktımı emacs ve bash gibi renkli hale nasıl getirebilirim? Uygulamam yalnızca UNIX sistemleri için olduğu için Windows umrumda değil.
125 c  colors  std  stdio 

8
C ++ 'da C başlıklarını kullanırken, std :: işlevlerinden mi yoksa global isim alanından mı kullanmalıyız?
C bir şekilde, tam olarak değil, C ++ 'nın bir alt kümesidir. Yani C ++ 'daki C işlevlerinin / başlıklarının çoğunu adı biraz değiştirerek ( stdio.hto cstdio, stdlib.hto cstdlib) kullanabiliriz. Sorum aslında biraz anlamsal. C ++ kodunda (GCC derleyicisinin en yeni sürümünü kullanarak), arayabilirim printf("Hello world!");ve std::printf("Hello world!");tamamen aynı şekilde …
113 c++  language-lawyer  std 

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.