Zum Inhalt springen

statische Funktion/Member-Variable


wulfgang

Empfohlene Beiträge

Hallo,

ich bekomme von GetFtpConnection einen Zeiger auf CFtpConnection.

CFtpConnection *connection; 

connection = session.GetFtpConnection(pstrServer, login, passwd, port, bPassive
Diese Funktion ist in einer Klasse implementiert. Ich möchte, dass zurückgegebene Zeiger auch für andere Funktionen außerhalb der Klasse verfügbar ist.Nun hatte ich gehofft dies ginge über eine statische Funktion/Member-Variable. Allerdings erhalte ich noch
error LNK2001: unresolved external symbol "public: static class CFtpConnection * Connect::connection_pointer" (?connection_pointer@Connect@@2PAVCFtpConnection@@A)
und
fatal error LNK1120: 1 unresolved externals
In Connect.cpp:
Connect::Connect(void)

{......

if(connection = session.GetFtpConnection(pstrServer, login, passwd, port, bPassive)) 

			{

			cout << "Verbindung wurde aufgebaut\n";     

			connection_pointer=connection; 

			}

CFtpConnection Connect::*connection_pointer=0;

....}

CFtpConnection Connect::*connection_pointer=0;

CFtpConnection * Connect::getLastConnection() 

{ 

	return connection_pointer; 

}

.....
In Connect.h
class Connect

{

public:

	Connect(void);

	static CFtpConnection * Connect::getLastConnection(); 

	static CFtpConnection *connection_pointer;

public:

	~Connect(void);

};

Link zu diesem Kommentar
Auf anderen Seiten teilen

Die Zeile im Konstruktor:

CFtpConnection Connect::*connection_pointer=0;
raus. Die Zeile für die Deklaration:
CFtpConnection Connect::*connection_pointer=0;
ändern in:
CFtpConnection* Connect::connection_pointer=NULL;
[Editerle]
Du musst die statische Membervariable noch definieren, am besten in Connect.cpp:
CFtpConnection* Connect::connection_pointer;

Würde ich besser mit NULL definieren, sonst zeigt der Zeiger irgendwo hin. ;)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...