J'utilise la fonction de modèle:uint8_t et non signé erreur reliant omble
template<typename T> void func(const T& value)
{
obj->func(value);
}
où obj est l'objet de la classe:
void my_object::func(int64_t value) { ... }
void my_object::func(uint64_t value) { ... }
void my_object::func(uint32_t value) { ... }
void my_object::func(uint16_t value) { ... }
void my_object::func(uint8_t value) { ... }
Le problème est avec uint8_t surcharge de mon_objet :: func() override. Linker se plaint des symboles externes non résolus aux surcharges, qui devrait avoir non signé char paramètre.
Dois-je remplacer uint8_t surcharge avec surcharge ombles non signé?
Edit: Tout à l'heure remarqué que linker se plaint de uint64_t et int64_t aussi.
Je compile sur Windows en utilisant MSVC++ 2008 Express.
Edit: Toutes mes excuses, je déclarémon_objet :: func (valeur uint8_t) fonction (et d'autres), mais je ne pas définir.
Soit dit en passant, quel est votre compilateur? –
MSVC++ 2008 Express – mnn
Quel est le message d'erreur ** exact ** que vous obtenez? –