کاربرد namespace بی نام چیه؟ - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

کاربرد namespace بی نام چیه؟

+1 امتیاز
سلام بر همگی .

چه زمانی نیاز به استفاده از namespce بی نام داریم و همچین چیزی چه کاربردهایی داره ؟
سوال شده بهمن 23, 1393  بوسیله ی toopak (امتیاز 2,458)   16 47 66

2 پاسخ

+2 امتیاز
 
بهترین پاسخ
سلام.

namespace برای جایگذین شدن کلمه کلیدی static ساخته شدن. اینطور گفته شده که کلمه ی کلیدی static توی ++C منسوخ شده ولی خوب در حقیقت اینطور نیست. مثلا اگر شما برای مخفی کردن یک تابع یا شی از دید دیگر فایل ها اون رو بصورت static تعریف کنید با اینکه اون رو توی یک namespace بی نام تعریف کنید تفاوتی نداره. تنها مزیتی که namespace های بی نام نسبت به static دارن اینه که شما میتونید Data Type های local هم تعریف کنید که فقط توی همون فایل قابل دسترسی و استفاده هست .
پاسخ داده شده اسفند 27, 1393 بوسیله ی Ali Rahbar (امتیاز 4,240)   6 16 46
انتخاب شد اردیبهشت 18, 1394 بوسیله ی toopak
0 امتیاز
همه توابعی که در سورس تعریف میشه به صورت external linkage هستش برای اینکه از حالت external در بیاد تو ansi c با کلمه کلید static آن را به internal تبدیل می کنند که در translation unit ها دیگه قابل رویت نباشه .حالا تو c++ برای اینکه نخوان برای همچین کاری از static استفاده کنند anonymous namespaces را معرفی کردند.که بدین ترتیب متغیر های و توابع در همان سورس قابل دسترس هستند.
پاسخ داده شده مرداد 24, 1398 بوسیله ی farnoosh (امتیاز 8,362)   20 44 59
...