Недавно я много читал о разделяемых библиотеках в Linux, и вот что я узнал:
soname
, включая его основной номер версии. Что-то вроде: libfoo.so.1
libfoo.so.1.0
/ usr / local / lib
, если ldconfig
запущен, он будет читать soname
и создайте символическую ссылку с именем libfoo.so.1
, указывающую на libfoo.so.1.0
. libfoo.so
, указывающую на libfoo.so.1.0
.
{вернуть x + y;
} main.cpp: #include По адресу: http://www.learncpp.com/cpp-tutorial/19-header-files/
Упоминается следующее:
add.cpp:
int add(int x, int y)
{
return x + y;
}
main.cpp:
#include
int add(int x, int y); // forward declaration using function prototype
int main()
{
using namespace std;
cout << "The sum of 3 and 4 is " << add(3, 4) << endl;
return 0;
}
Мы использовали предварительное объявление, чтобы компилятор знал, что было «
add
» при компиляцииmain.cpp
. Как упоминалось ранее, написание опережающих объявлений для каждой функции, которую вы хотите использовать, которая находится в другом файле, может быстро утомить.
Не могли бы вы объяснить « опережающее объявление » дальше? проблема, если мы используем его в функции main ()
?