#c #function #namespaces #implementation
#c #функция #пространства имен #реализация
Вопрос:
По сути, это мой исходный код.
namespace name {
int func (void);
}
int main (void) {
name::int func (void) {
//body
}
return 0;
}
Теперь я хочу написать эту функцию, объявленную в пространстве имен, в другом месте.
Ответ №1:
Вы не можете определить функцию внутри другой функции подобным образом. Есть два варианта:
Повторно откройте пространство имен и определите функцию внутри него:
namespace name {
int func() {
// body
}
}
Вне пространства имен (а также вне определения любой функции или класса) определите ее, используя ее полное имя:
int name::func() {
// body
}
Ответ №2:
Вы не можете определить функцию внутри функции в C .
Это работает
namespace name {
int func (void);
}
int name::func (void) {
//body
}
int main (void) {
return 0;
}