У меня есть два файла, один из которых называется test.cpp, а другой - ani.cpp.
test.cpp выглядит следующим образом:
#include<iostream>
namespace Anirudh{
void start(){
std::cout<<"This is the start function of the namespace Anirudh\n";
}
}
ифайл ani.cpp выглядит следующим образом
#include<iostream>
using namespace Anirudh;
int main(){
start();
return 0;
}
, и это то, что я делаю на терминале
anirudh@anirudh-Aspire-5920:~/Desktop/testing$ g++ -c test.cpp
anirudh@anirudh-Aspire-5920:~/Desktop/testing$ g++ test.o ani.cpp
ani.cpp:3: error: ‘Anirudh’ is not a namespace-name
ani.cpp:3: error: expected namespace-name before ‘;’ token
ani.cpp: In function ‘int main()’:
ani.cpp:6: error: ‘start’ was not declared in this scope
anirudh@anirudh-Aspire-5920:~/Desktop/testing$
Этов первый раз я пытаюсь определить свое собственное пространство имен в C ++ и использую его в другом коде.Мой код работает после #include "test.cpp"
в моем ani.cpp
файле, но я хочу связать объектный код test.cpp
с ani.cpp
, а не включать его в ani.cpp. Я даже пробовал extern namespace Anirudh;но это не сработало.Конечно, есть правильный способ связать их, чего я сейчас не знаю.Поэтому, пожалуйста, просветите меня.Заранее спасибо.