Puis-je appeler une fonction templated statique non-membre d'une fonction de membre statique où la définition est divisée en-tête et cpp:Définitions de méthodes basées sur des modèles statiques non membres en C++?
// zero.cpp
class Zero
{
static void zero() { one(5); }
};
// one.h
template <typename T>
static void one(T& var);
// one.cpp
template <typename T>
void one(T& var) { }
// main.cpp
...
Zero::zero()
...
Je vais avoir des problèmes pour faire cela lien, je continue à faire référence non définie à la fonction que j'essaie de définir dans one.cpp. Initialement, je pensais que c'était dû à un problème avec l'espace de noms, mais tous les fichiers sont maintenant dans le même espace de noms. Est-ce que je fais quelque chose de fondamentalement mauvais ici?
Ceci est un doublon un million de fois, mais SO est terrible à trouver des choses. Stupide recherche SO. – GManNickG