Neden &; ad std quot;" kötü olarak kabul ediyormusunuz?
Hocam programlarımız using namespace std;
kullanmamız gerektiğini söyleyerek yanlış olduğunu defalarca başkaları tarafından söylendi.Dolayısıyla, std::cout
std::cin
kullanmalıyız ve bu daha uygun.Ancak, hatta hiç bu kadar kötü bir uygulama olduğunu açıkça ifade etmediler.
Neden using namespace std;
kötü sayılır mı? Gerçekten bu kadar verimsiz mi, yoksa belirsiz değişkenleri bildirmek(std ad alanında bir işlev olarak aynı adı paylaşan değişkenler) risk? Ya da bu fark daha büyük uygulamalar yazma gibi program performansını etkiler mi?
CEVAP
Bu performans ile ilgili değil. Ama şunu düşünün: iki kitaplık Foo ve Bar: adı kullanıyorsunuz
using namespace foo;
using namespace bar;
Her şey gayet iyi çalışıyor, Foo Blah()
arama ve sorunsuz Bar Quux()
. Ama bir gün, Foo yeni bir sürüm için artık bir fonksiyonu Quux()
denir sunan 2.0 yükseltme. Bir çelişki var: Hem Foo 2.0 ve Spor Genel ad Quux()
al. Bu özellikle de işlev parametreleri aynı olursa düzeltmek için bir çaba olacak.
foo::Blah()
bar::Quux()
kullandıysanız o zaman foo::Quux()
giriş olmayan bir olay olurdu.
Neden belgedir.yazma " kabul;kötü ...
Neden C ön işlemci word "linux&qu...
Neden oluştur "Örtülü olarak Opti...
Neden ReSharper söyle&; örtülü olarak ...
Neden Bahar'In ApplicationContext...