Lors de la compilation de ce code, je reçois le error suivant:Que signifie «initialisation invalide de la référence non-const»?
In function 'int main()': Line 11: error: invalid initialization of non-const reference of type 'Main&' from a temporary of type 'Main'
Voici mon code:
template <class T>
struct Main
{
static Main tempFunction(){
return Main();
}
};
int main()
{
Main<int> &mainReference = Main<int>::tempFunction(); // <- line 11
}
Je ne comprends pas pourquoi? Quelqu'un peut-il expliquer?
Quelle est l'erreur – Mark
S'il vous plaît poster les messages d'erreur exact du compilateur. –
Votre déclaration de modèle ne dépend pas de la classe paramétrée. –