При попытке скомпилировать проект с использованием библиотеки SFML и собственных hpp-файлов, следующими командами:
g++ -c main.cpp list.cpp -I src/include
g++ -o main main.o list.o -L src/lib -l sfml-graphics-d -l sfml-window-d -l sfml-system-d -l winmm -l gdi32
Вылезает ошибка:
main.o:main.cpp:(.text+0x360): undefined reference to `list<float*>::list(float**, int)'
collect2.exe: error: ld returned 1 exit status
В main.cpp есть единственна строчка использования list.hpp
list<float*> polygon(points, 4);
points - 2-ух мерный массив float**
list.hpp:
#include <string>
template<class TypeClass>
class list{
public:
int size=1;
TypeClass *arr = new TypeClass[1]{0};
char status='s';
list(){}
list(TypeClass *arr_, int size_);
void add(TypeClass var);
void clean();
void del(int index);
void del_el(TypeClass elem);
bool in(TypeClass elem);
};