2010-09-01 4 views
-2

Dans mon Service.h je:C2065 non déclarés

#include "Configuration.h" 

et dans ma classe:

private: 
ConfigurationInterface* configuration_; 

Puis, dans mon service.cpp:

Service::Service(Foundation::Framework* framework) : 
     framework_(framework) 
    { 

    configuration_ = new Configuration(); 
    } 

et plus tard ...

const Info GetInfo() 
{ 
    return configuration_->getInfo(); 
} 

Je reçois une erreur d'identificateur non déclarée .... (configuration_)

Pourquoi?

EDIT: Comme Cédric H. a dit: "ConfigurationInterface est une classe abstraite et configuration en héritent"

+3

S'il vous plaît poster une source compilable minimale ainsi que l'erreur exacte. – dirkgently

+0

quel identificateur dit-il est non déclaré? Sur quelle ligne l'erreur apparaît-elle? –

+0

chaque ligne utilisée pour la configuration ... – legami

Répondre

3

changement

const Info GetInfo() 

à

const Info Service::GetInfo() 
+0

Cela a fonctionné. Pourrais-je savoir ce que j'ai fait de mal? Merci encore :) – legami

+0

Sans la qualification de classe sur la fonction, le compilateur pense qu'il s'agit d'une fonction globale plutôt que d'une fonction de membre de classe, et donc il n'a aucune idée de ce que configuration_ est supposé être. –

0

Configuration_ = new ConfigurationInterface();

+1

Mais peut-être ConfigurationInterface est une classe abstraite et la configuration en hérite-t-elle? –

+0

Et peut-être le fichier Configuration.h est vide ... –

+0

Cedrik H. a raison :) – legami

Questions connexes