คำถามติดแท็ก using-directives

30
ทำไม“ ใช้ namespace std;” ถือว่าเป็นการปฏิบัติที่ไม่ดี?
ฉันได้รับการบอกเล่าจากคนอื่นว่าการเขียน using namespace std;ในรหัสที่เป็นธรรมและที่ฉันควรใช้std::coutและstd::cinโดยตรงแทน เหตุใดจึงusing namespace std;ถือว่าเป็นวิธีปฏิบัติที่ไม่ดี มันไม่มีประสิทธิภาพหรือมีความเสี่ยงในการประกาศตัวแปรที่ไม่ชัดเจน (ตัวแปรที่ใช้ชื่อเดียวกันกับฟังก์ชั่นในstdเนมสเปซ)? มันส่งผลกระทบต่อประสิทธิภาพหรือไม่

7
ฟังก์ชัน Visual Studio หรือ Resharper สำหรับการจัดตำแหน่งโดยใช้คำสั่ง
ฉันต้องการใส่คำสั่งการใช้งานของฉันไว้ในเนมสเปซปัจจุบันไม่ใช่ภายนอกเนื่องจาก VS และ Resharper ตามค่าเริ่มต้นวางไว้ มีใครทราบถึงฟังก์ชันแมโคร / มาตรฐานที่จัดเรียง / ลบที่ไม่ได้ใช้โดยใช้คำสั่งและวางไว้ในเนมสเปซปัจจุบัน

2
ทำไม“ ใช้ระบบ” ไม่ถือว่าเป็นการปฏิบัติที่ไม่ดี?
ฉันมีพื้นหลัง C ++ และฉันเข้าใจและเห็นด้วยอย่างยิ่งกับคำตอบของคำถามนี้: เหตุใด“ ใช้ namespace std;” ถือว่าเป็นการปฏิบัติที่ไม่ดี? ดังนั้นฉันประหลาดใจที่มีประสบการณ์กับ C # ตอนนี้ฉันเห็นตรงข้ามแน่นอน: using Some.Namespace;มีการใช้อักษรทุกที่ เมื่อใดก็ตามที่คุณเริ่มใช้ประเภทคุณเพิ่มคำสั่งที่ใช้สำหรับเนมสเปซก่อน (ถ้ายังไม่มีอยู่) ฉันไม่สามารถจำได้เห็น.csแฟ้ม: using System; using System.Collections.Generic; using X.Y.Z; etc...ที่ไม่ได้เริ่มต้นด้วย ในความเป็นจริงถ้าคุณเพิ่มไฟล์ใหม่ผ่านวิซาร์ด Visual Studio มันจะเพิ่มไฟล์บางไฟล์โดยใช้คำสั่งที่นั่นแม้ว่าคุณอาจไม่ต้องการมันก็ตาม ดังนั้นในขณะที่ในชุมชน C ++ คุณจะได้รับการลงโทษโดยทั่วไป C # ก็สนับสนุนให้ทำเช่นนี้ อย่างน้อยนี่คือสิ่งที่ฉันเห็น ตอนนี้ฉันเข้าใจแล้วว่าการใช้คำสั่งใน C # และ C ++ ไม่ใช่สิ่งเดียวกัน นอกจากนี้ฉันจะเข้าใจว่าหนึ่งในสิ่ง nastiest ที่คุณสามารถทำอะไรกับusing namespaceใน C ++ …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.