Синтаксис для прототипирования функций в заголовочных файлах - PullRequest
0 голосов
/ 06 декабря 2010

Предположим, у меня есть следующий прототип функции:

void MyFunction(int MyParameter);

При следующем определении:

void MyFunction(int MyParameter)
{
    // Do stuff here.
}

Куда их поместить, если у меня есть файл заголовка (без функции main) с пространством имен? Прототип входит в пространство имен, а определение выходит за его пределы? Или они оба входят?

Ответы [ 3 ]

1 голос
/ 06 декабря 2010

Если ваш прототип не находится в пространстве имен, вам не нужно помещать определение в пространство имен.Если прототип находится в пространстве имен, определение должно быть в том же пространстве имен.

1 голос
/ 06 декабря 2010

Если вы решили использовать пространство имен, оба должны быть внутри:

.h:

namespace MyNameSpace {
void MyFunction(int MyParameter);
}

.cpp:

void MyNameSpace::MyFunction(int MyParameter)
{
    // Do stuff here.
}
0 голосов
/ 06 декабря 2010

Они оба должны быть в пространстве имен

...