Zeiger als Rückgabe Wert einer Funktion

DuffCola

Mitglied
Hallo.
ich habe einmal eine Header Datei, in der eine Klasse deklariert ist:
(Node ist eine eine Struktur)
Code:
class NodeManager
{
private:
	Node *start;
	Node *end;
public:
	NodeManager();
	Node *NewNode(int id);
	bool DelNode(int id);
	Node *GetNode(int id);
};
Und dann eine CPP datei, in der ich die einzelnen Funktionen der Klasse definiert habe:
Code:
#include "NodeManager.h"

NodeManager::NodeManager()
{
	start = 0;
	end = 0;
}
Node NodeManager::*NewNode(int id)
{
	// BLABLA
}
bool NodeManager::DelNode(int id)
{
	// BLABLA
}
Node NodeManager::*GetNode(int id)
{
	// BLABLA
}
Jetzt habe ich das Problem, dass ich ja einen Zeiger des Types Node als Rückgabewert für 2 Funktionen habe.
Wenn ich die Extern definieren will, und es so mache, habe ich keinen Zugriff, auf die Funktionen und Variablen der Klasse NodeManager.
Ich habe schon sämtliche Syntax formen ausprobiert, aber egal wo ich sonst das Sternchen hinmache, entsteht ein Syntax Fehler.
WIe sieht der Synatx richitg aus?
 
Geht nicht!
Kriege diese Fehler Meldung:
Die Deklaration ist nicht mit ""Node *NodeManager::NewNode(int id)" (deklariert in Zeile 10 von "c:\users\michael\desktop\programmieren\c++\projects\nodelist\nodelist\NodeManager.h")" kompatibel. c:\users\michael\desktop\programmieren\c++\projects\nodelist\nodelist\nodemanager.cpp 9

Sorry, extern war der falsche ausdruck, ich meinte damit nur, dass cih die funktion nicht in der Header Datei in der Klasse direkt definiert habe(Kann sein, dass ich definieren und deklarieren vertausche, ich vergesse den Unterschied immer).
 
Kann es sein, dass du vergessen hast, die Headerdatei mit Node einzubinden
(falls in einer eigenen)?
 
Nur damit ich das nicht falsch verstehe:

Ist dein Problem jetzt, dass zwei der Funktionen einen Pointer auf Note zurückliefern sollen, aber mit deinem Quellcode von oben funktioniert das nicht?

mfg
 
Mein Problem ist es, dass, wenn ich alles so wie oben mache das nicht Funktioniert(Ich habe keinen zugriff mehr auf die Member von der classe NodeManager), ich bekomme zwar keine Error Meldung, wenn ich es so mache wie ganz oben, aber wenn ich es wie Sheel mache kriege ich die beschriebene Error Meldung.
Ja ich habe die Header "Node.h" in beiden Dateien eingebunden.
 
Das scheint das Problem zu sein.
Kompiliert nicht.

edit: Kannst du vllt. das gezippt hier mal raufladen?
 
Zurück