У меня есть два cpp файла:
F1. cpp
using namespace std;
int i;
void Modify();
int main()
{
i=1;
cout << "i main 1 = " << i << endl;
Modify();
cout << "i main 2 = " << i << endl;
return 0;
}
F2. cpp
using namespace std;
extern int i;
inline void Modify()
{
i=99;
cout << "i modify = " << i << endl;
}
Когда я запускаю исполняемый файл, я получаю эту ошибку: F1.o: В функции main: F1. cpp :(. Text + 0x4a): неопределенная ссылка на `Modify () 'collect2 : ошибка: ld вернул 1 состояние выхода
Я не понимаю, почему это происходит, поскольку смысл встроенной функции заключается в том, что код вставляется при копировании при вызове функции. Поэтому, когда я вызываю Modify () в моем основном методе, я думаю, что он вставит туда код функции Modify (), поэтому я не понимаю, почему будет неопределенная ссылка ...
Пожалуйста, помогите!