Привет!
Пробую слинковаьб два файла:
// 1.cc:
template<class T>
void f (T);
// #include"2.cc"
int
main (void)
{
int i = 1;
f (i);
return 0;
}
и второй:
// 2юссЖ
template<class T>
void f(T tt) {};
[etv@pcf004]$ g++ 1.cc 2.cc -o test
/tmp/ccDmwGJP.o: In function `main':
/tmp/ccDmwGJP.o(.text+0x15): undefined reference to `void f<int>(int)'
collect2: ld returned 1 exit status
Если же я включаю определение 2.cc в 1.сс (убираю коментарий перед
#include) и не компилирую 2.сс, то все нормально:
[etv@pcf004]$ g++ 1.cc -o test
[etv@pcf004]$
Почему?
Спасибо!
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Почему код не компилится (2005)
- Форум [C]Вопрос может глупый, но я в ступоре. (2012)
- Форум C xlib позииция курсора (2009)
- Форум Система не находит crypt () функцию (1999)
- Форум iostream? (2003)
- Форум ВНИМАНИЕ !!!! ВЫСЧИТЫВАЮ СИНУС !!!!! (2003)
- Форум libavformat и C++ (2009)
- Форум Система не находит crypt () функцию (1999)
- Форум C & ncurses (2008)
- Форум pthread_create и прочий бред. (2004)