SORU
29 Kasım 2011, Salı


&;\n" quot; veya '\n' std::std sınırı::print?

Şimdi std::endl std::cout, yazarken satır sonuna kadar kullanmayı kestim ve yerine "\n" kullanmaya başladığından beri yıllar oldu.

Ama şimdi kod yerine '\n' kullanarak daha fazla parçacıkları çıkmaya başladım, ve en iyi ne olabileceğini merak etmeye başladım.

Tek bir dize, ve diğer bir karakter olduğu aşikar ayrıca bu kullanarak herhangi bir avantaj:

std::cout << variable << '\n';

Bu:

std::cout << variable << "\n";

CEVAP
29 Kasım 2011, Salı


Aslında '\n' varsayılan olmalıdır. Ayrıca açıkça akışı (ve ne zaman ve neden bunu yapmak istiyorsun ki?) floş, istemiyorsan std::endl kullanmana gerek yok.1
Tabii ki, birçok kitap ve dersler varsayılan olarak std::endl kullanın. Bu talihsiz ve serious performance bugs yol açabilir.

Sanırım fazla bir fark arasında kullanarak '\n' kullanarak "\n" ama ikinci bir dizi (iki) karakter olan yazdırılacak karakter karakter için bir döngü var olmak ayarlamak, daha karmaşık, daha çıkış tek bir karakter. IO yaparken tabii ki bu çok önemli, ama şüpheniz varsa, bir karakter, bir karakter yerine, bütün bir dize literal çıktı çıktı istediğiniz zaman değişmez.
Bunu yaparken yan etkisi çok güzel seni o kodunuzda iletişim kurmaktasarlanmıştırçıkış sadece tek bir karakter, ve kazara değil, bunu yaptı.


1Not std::cout bağlı std::cin varsayılan olarak, hangi yol açar std::cout olmak temizlendi önce herhangi bir giriş işlemi, herhangi bir istemi yazdırılır önce kullanıcının giriş bir şey.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Distractify

    Distractify

    1 Aralık 2011
  • Flohoo

    Flohoo

    12 EYLÜL 2009
  • Google Developers

    Google Devel

    23 AĞUSTOS 2007