l'appel d'une fonction membre d'une classe différente d'une autre classe

J'ai deux classes A et B. Le contrôle est à l'intérieur de l'une des fonctions membres de la classe A. La fonction de membre calcule un résultat et maintenant, je veux envoyer cette valeur à l'une des fonctions membres de la classe B, j'ai essayé la manière suivante, mais il force de travail

int memberFunctionOfA() 
{ 
... //les résultats sont stockés dans certains temporaire de la valeur, disons temp 

B::memberFunctionOfB(temp); //le chemin j'ai essayé 
} 

La comiler a signalé une erreur. J'ai aussi essayé comme

B obj; 
obj.memberFunctionOfB(temp); 

À la fois m'a donné des erreurs que l'memberFunctionOfB ne peut pas être appelé. Quelqu'un peut me dire ce qui me manque

Modifier

Classe B n'est pas hérité de A. Ils sont tous les deux indépendants. À la fois les fonctions de membre sont publiques et non statique

Parlez-nous de l'erreur exacte que le compilateur.
Je ne comprends pas memberFunctionOfB est fonction statique?
La déclaration de la classe B aiderait beaucoup ici. Si Un hérite de B (ou l'inverse), de catégorie A de la déclaration de l'aide. D'abord deviner, je dirais memberFunctionOfB est privé/protégé, mais il est difficile de dire sans voir le code.
Cette erreur signifie que votre classe B n'a pas de constructeur par défaut. SI vous souhaitez créer un B, vous aurez besoin de fournir des arguments -- comme B obj(42, "These are sample args"); plutôt que de simplement B obj;. Regardez à travers le code de la classe B et de trouver ce que son constructeur attend.
compilateur dit votre classe B n'a pas de constructeur par défaut qui est nécessaire pour créer un objet sur la pile, comme vous le faites ici: B obj;

OriginalL'auteur CHID | 2011-02-13