اولین بار است که به این وب‌سایت می‌آیید. راهنما را مطالعه کنید!
x
موسسه خیریه محک

شهر ریاضی بازی-ریاضی

قرار دادن فضای نام در فایل‌های h و cc

0 امتیاز
133 نمایش

من یک قسمت از برنامه‌م رو داخل دو فایل .h و .cc نوشتم که حاوی اعلان و تعریف یک کلاس و توابعش هست. فایل .h من به شکل زیر هست.

namespace X
{
  namespace Y
  {
    class C
    {
      C();
      ~C();
      void f();
    };
  }
}

حالا فضای نام‌ها رو چطور در فایل .cc بیارم؟ لازمه حتماً به همون شکل .h باشه؟

هیچ پژوهش انسانی نمی‌تواند ادعای علمی بودن داشته باشد، مگر این‌که از برهان ریاضی برخوردار باشد (لئوناردو داوینچی)
پرسیده شده یکشنبه ۱۹ خرداد ۱۳۹۲ در C++ توسط prodo  

1 پاسخ

0 امتیاز

خیر. اما به هرحال فضای نام مورد استفاده در اعلان و تعریف باید مشخص و یکی باشن. به صورت‌های زیر می‌شه عمل کرد

#include "file.h"
namespace X
{
  namespace Y
  {
    C::C(){ ... }
    C::~C(){ ... }
    C::f()
    {
      ...
    }
  }
}

یا

#include "file.h"
using namespace X::Y;

C::C(){ ... }
C::~C(){ ... }
C::f()
{
  ...
}

یا

#include "file.h"

X::Y::C::C(){ ... }
X::Y::C::~C(){ ... }
X::Y::C::f()
{
  ...
}

یا حتی

#include "file.h"
using namespace X;

Y::C::C(){ ... }
Y::C::~C(){ ... }
Y::C::f()
{
  ...
}
هیچ پژوهش انسانی نمی‌تواند ادعای علمی بودن داشته باشد، مگر این‌که از برهان ریاضی برخوردار باشد (لئوناردو داوینچی)
پاسخ داده شده یکشنبه ۱۹ خرداد ۱۳۹۲ توسط prodo