template <class T> class NamedVector {
class Road : public NamedVector<float> {
cat model/namedvector.hpp model/namedvector.cpp model/road.hpp model/road.cpp main.cpp | grep -v ".hpp" > toto.cpp; g++ toto.cpp
# OK, pas d'erreurs
g++ model/namedvector.cpp model/road.cpp main.cpp
# Plein d'erreurs
/tmp/ccAWLWM9.o: dans la fonction « Road::Road(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)»:
road.cpp:(.text+0x14): référence indéfinie vers « NamedVector<float>::NamedVector(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)»
/tmp/ccAWLWM9.o: dans la fonction « Road::Road(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)»:
road.cpp:(.text+0x2e): référence indéfinie vers « NamedVector<float>::NamedVector(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)»
/tmp/ccAWLWM9.o: dans la fonction « Road::Road() »:
road.cpp:(.text+0x41): référence indéfinie vers « NamedVector<float>::NamedVector()»
/tmp/ccAWLWM9.o: dans la fonction « Road::Road() »:
road.cpp:(.text+0x55): référence indéfinie vers « NamedVector<float>::NamedVector()»
/tmp/ccWakQYe.o: dans la fonction « main »:
main.cpp:(.text+0x48): référence indéfinie vers « NamedVector<float>::add(float const&)»
collect2: ld a retourné 1 code d'état d'exécution