PDA

View Full Version : مشکل با using namespace std;



pcse7en
چهارشنبه 05 تیر 1392, 15:43 عصر
با سلام به دوستان محترم اگر امکان دارد درباره این دستور یک توضیح یا آموزش قرار بدید تا متوجه بشم که به چه دردی می خوره . هرچه که گشتم توضیح به درد بخوری پیدا نکردم و اگر هم بود هر چه خواندم متوجه نشدم.
using namespace std;

فرید باباخانی
چهارشنبه 05 تیر 1392, 15:58 عصر
سلام دوست عزیز
using namespace std; این دستور بعد از #include ها به کار میره و مربوط به دستور cout هستش که با نوشتن این دستور دیگه مجبور نیستیم که برای هر خط کد که از cout استفاده میکنیم دستور cout :: را وارد کنیم و با نوشتن اون فقط کافیه برای هر خط فقط دستور cout مورد نظرمون رو بنویسیم.

pcse7en
چهارشنبه 05 تیر 1392, 16:36 عصر
من بدون این دستور هم cout رو بدون این :: می نوشتم

returnx
چهارشنبه 05 تیر 1392, 16:39 عصر
شما قبل از اینکه بخواید مفهوم این کد رو بفهمید باید مفهوم فضای نام ( Name Space) را متوجه شید :
http://barnamenevis.org/showthread.php?283540-namespace-%DA%86%DB%8C%D8%B3%D8%AA-%D9%88-%D8%A8%D9%87-%DA%86%D9%87-%D8%AF%D8%B1%D8%AF%DB%8C-%D9%85%DB%8C%D8%AE%D9%88%D8%B1%D8%AF!%D8%9F (http://barnamenevis.org/showthread.php?283540-namespace-%DA%86%DB%8C%D8%B3%D8%AA-%D9%88-%D8%A8%D9%87-%DA%86%D9%87-%D8%AF%D8%B1%D8%AF%DB%8C-%D9%85%DB%8C%D8%AE%D9%88%D8%B1%D8%AF%21%D8%9F)
شما ابتدا لینک بالا را مطالعه کنید تا مفهوم Namespace را متوجه شید...
بعد شما با این دستور ، فضای نام std را به برنامتون اظافه می کنید...

anonymous$
چهارشنبه 05 تیر 1392, 16:39 عصر
وقتی ما یه فایل سرایند(هدر یا همون دستوراتی که اولشون # داره) به برنامه اضافه میکنیم محتویات این فایل سرایند درو فضای نام استاندارد( std) قرار میگیره,مثلا با اضافه کردن iostream محتویاتش که همون cin و cout هستن درون std قرار میگیره,حالا برای دسترسی بهشون از دو طریق میشه عمل کرد,استفاده این وازه : using namespace std و یا اینکه قبل از دستورات cin و cout استفاده بشه,اینجوری std::cin >> varible;
std::cout << "statement";

pcse7en
چهارشنبه 05 تیر 1392, 16:55 عصر
حالا این دو حالت با هم چه فرقی می کنند این ها که هر دو تاش یک کا رو می کنن

anonymous$
چهارشنبه 05 تیر 1392, 17:18 عصر
خب برای همین گفتم که دو جور میشه استفلده کرد,اصلا بگو چیزی فهمیدی یا نه؟

pcse7en
چهارشنبه 05 تیر 1392, 17:20 عصر
چرا دروغ بگم هر چه نگاه می کنم این دوتا یک کار رو انجام میدن و واقعا این رو نمی فهمم

anonymous$
چهارشنبه 05 تیر 1392, 17:27 عصر
خب دوست گلم این دو روش استفاده از std هست که بسته به میل خودت میتونی از هر کدوم از این دو روش استفاده کنی هیچ فرقی هم ندارن

pcse7en
چهارشنبه 05 تیر 1392, 17:33 عصر
خوب از همون اول همین رو می گفتین ما اینقدر قاطی نکنیم.
به هر حال متشکرم

فرید باباخانی
چهارشنبه 05 تیر 1392, 19:49 عصر
دوست عزیز من یکم کلی تر گفتم ولی دوستان بعد از من کاملتر و جامع تر گفتن ولی همه به ی نکته اشاره کردیم.
به نظرم زیاد مهم نیست که این جزییات رو بدونی بهتره بیشتره تمرکزتو بذاری روی برنامه نویسی...

فرید باباخانی
چهارشنبه 05 تیر 1392, 19:52 عصر
دمت گرم خیلی مثال خوبی زدی.