# Native Code > برنامه نویسی با C > برنامه نویسی با MFC و ++Visual C >  در مورد Using Namespace Std; در ++C

## vahidbolbol

با سلام خدمت دوستان گلم 
خسته نباشید
ببخشید من کدهای سی پلاس رو درون برنامه ویژال سی پلاس پلاس 2005 مینویسم میخواستم بدونم حتما باید از (Using Namespace Std;) بعد از معرفی کتابخانه استفاده کرد؟
حتما بتید Std باشه؟آخه من هرچی نام مینویسم قبول نمیکنه و وقتی Std  مینویسم برنامم اجرا میشه!!! وقتی تعریف نمیکنم یا به یک اسم دیگه مینویسم اصلا (cin و cout) را نمیشناسه!!!
میشه دلیلشو برام کامل توضیح بدین
بعدشم یک برنامه برام معرفی کنید مه تو ویندوز سون نصب بشه و کار باهاش آسان
خواهشا زود جوابمو بدین خیلی حیاطی هست

----------


## کامبیز اسدزاده

> با سلام خدمت دوستان گلم 
> خسته نباشید
> ببخشید من کدهای سی پلاس رو درون برنامه ویژال سی پلاس پلاس 2005 مینویسم میخواستم بدونم حتما باید از (Using Namespace Std;) بعد از معرفی کتابخانه استفاده کرد؟
> حتما بتید Std باشه؟آخه من هرچی نام مینویسم قبول نمیکنه و وقتی Std  مینویسم برنامم اجرا میشه!!! وقتی تعریف نمیکنم یا به یک اسم دیگه مینویسم اصلا (cin و cout) را نمیشناسه!!!
> میشه دلیلشو برام کامل توضیح بدین
> بعدشم یک برنامه برام معرفی کنید مه تو ویندوز سون نصب بشه و کار باهاش آسان
> خواهشا زود جوابمو بدین خیلی حیاطی هست


سلام

شما برای اینکه به توابع و کلاس های زیرین موجود و تعریف شده به صورت مستقیم دسترسی پیدا کنید باید از using namespace std; استفاده کنید.
در این حالت به صورت زیر استفاده میشه :


cout << "Test";


در صورتی که از std استفاده نکنید باید فضای نام رو صدا بزنید به صورت زیر :


std::cout<< "Test";

----------


## vahidbolbol

سلا
مرسی از اینکه کمکم میکنید
ببینید چیزی که من از این فضا نام فهمیدم اینه که برای مثلا چاپ یا گرفتن کارامتر باید از فضای نام Std  استفاده کنم و مثلا برای گرفتن تاریخ یا زمان باید از فضای نام Date استفاده کنم به نظر شما درسته این فهم من از فضا نام؟نمیشه برای ایجاد فضای نام یک اسم به دلخواه انتخاب کنیم؟چون من هر اسمی به غیر از Std  استفاده میکنم خطا میده!!!
منتظر جوابتون هستم...

----------


## vahidbolbol

راستی یک سوال دیگه
میخواستم بدون طوری میشه من مثلا یک عدد اعشاری وارد کنم اما خروجیش بهم عدد صحیح بده
باید اول متغییر float  تعریف کنم و بعد برای چاپ عدد   از متغییر  int استفاده کنم؟
اگه میشه یک دستور کدی برام بنویسید یا یک مثال خیلی ساده
ممنون میشم

----------


## کامبیز اسدزاده

> سلا
> مرسی از اینکه کمکم میکنید
> ببینید چیزی که من از این فضا نام فهمیدم اینه که برای مثلا چاپ یا گرفتن کارامتر باید از فضای نام Std  استفاده کنم و مثلا برای گرفتن تاریخ یا زمان باید از فضای نام Date استفاده کنم به نظر شما درسته این فهم من از فضا نام؟نمیشه برای ایجاد فضای نام یک اسم به دلخواه انتخاب کنیم؟چون من هر اسمی به غیر از Std  استفاده میکنم خطا میده!!!
> منتظر جوابتون هستم...


در بسیاری از موارد پیشفرض تعیین کردن نام فضای نام به صورت سلیقه ای نیست که ما تعیین کنیم مثلا همینکه شما میگید Std خودش غلطه و درستش std هست !
و در کل برای تعریف فضای نام به صورت سلیقه ای برای کلاس ها و توابعی که خودتون نوشتین میتونید به روش زیر اقدام کنید :


namespace namespace_name {
   // code declarations
}


و به صورت جزئی تر به صورت زیر :


// header
namespace X
{
  class Foo
  {
  public:
    void TheFunc();
  };
}


// cpp
namespace X
{
  void Foo::TheFunc()
  {
    return;
  }
}






> راستی یک سوال دیگه
> میخواستم بدون طوری میشه من مثلا یک عدد اعشاری وارد کنم اما خروجیش بهم عدد صحیح بده
> باید اول متغییر float  تعریف کنم و بعد برای چاپ عدد   از متغییر  int استفاده کنم؟
> اگه میشه یک دستور کدی برام بنویسید یا یک مثال خیلی ساده
> ممنون میشم


در رابطه با این سوالات هم توصیه من اینه در تالار های مربوط به مباحث اولیه C/C++‎ بپرسید.

----------

