geany hat ein Problem mit c++ Klassen

Developer-Tools, Entwicklungsumgebungen und alles andere, was sich installieren lässt
Antworten
gizno82
Beiträge: 46
Registriert: Sa Dez 19, 2009 4:03 pm

geany hat ein Problem mit c++ Klassen

Beitrag von gizno82 » Di Aug 07, 2012 3:21 pm

Hallo liebe Leut,

Ich arbeite auf einem Debian System und bin gerade dabei den Geany Editor zu testen.
Bis jetzt gefällt mir Geany auch ganz gut, aber irgend wie scheint Geany keine c++ Klassen.
Ich habe eine einfache Klasse geschrieben um Geany auszubrobieren, nichts was irgend wie Sinn macht.

Geany erkennt class, public, private und protected gar nicht als c++ Schlüsselwort sondern es wird als normaler Text interpretiert.

Unter Ecplipse lässt sich alles einwandfrei compilieren.

Geany sagt mir folgendes:

test.cpp:(.text+0x13): undefined reference to `cBla::cBla()'
test.cpp:(.text+0x5f): undefined reference to `cBla::setValue(int)'
test.cpp:(.text+0x6b): undefined reference to `cBla::getValue()'
test.cpp:(.text+0xae): undefined reference to `cBla::~cBla()'

hier noch ein bisschen Quellcode:

Hier befindet sich das Hauptprogramm:

Code: Alles auswählen

#include <iostream>
#include "ctest.h"

using namespace std;

int main(void)
{
int value;
cBla bla;


	cout << "Bitte Wert eingeben" << endl;
	cin >> value;
	bla.setValue(value);
	cout << "Der Wert ist: " << bla.getValue() << endl;

	return 0;
}
Headerdatei der Klasse:

Code: Alles auswählen

class cBla
{
	private:
		int value;
	public:
		void setValue(int value);
		int getValue(void);
		cBla(void);
		~cBla(void);
};
cpp datei der Klasse

Code: Alles auswählen



#include "ctest.h"


cBla::cBla(void)
{
	
}


cBla::~cBla(void)
{
	
}

void cBla::setValue(int value)
{
	this->value = value;
}


int cBla::getValue(void)
{
	return value;
}
wie gesagt unter eclipse läuft alles einwandfrei.

Weiß jemand von euch wo der Hund begraben liegt.


Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8859
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: geany hat ein Problem mit c++ Klassen

Beitrag von Xin » Di Aug 07, 2012 4:12 pm

Das klingt, als würde die Implementierung (.cpp) der Klasse nicht zum zu kompilierenden Projekt gehören.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

gizno82
Beiträge: 46
Registriert: Sa Dez 19, 2009 4:03 pm

Re: geany hat ein Problem mit c++ Klassen

Beitrag von gizno82 » Di Aug 07, 2012 11:43 pm

So wie ich die Sache sehe kann man in Geany gar keine Projekte wie z.B. in Eclipse oder Code::Blocks erstellen.
Es gibt lediglich noch die Möglichkeit mit Makefiles zu arbeiten.

Gruß Gizno

gizno82
Beiträge: 46
Registriert: Sa Dez 19, 2009 4:03 pm

gelöst: geany hat ein Problem mit c++ Klassen

Beitrag von gizno82 » Mi Aug 08, 2012 1:06 am

Hab jetzt des Rätsels Lösung

Wenn man bei Geany über Erstellen -> Erstellen oder per F9 sein Programm erstellen möchte, ist es leider so das Geany immer nur die Datei Compiliert, die gerade aktiv ist.
Das führt dann zu Fehlermeldungen wie dieser: main.cpp:(.text+0x7): undefined reference to `outPut()'

Man kann dieses Problem umgehen, in dem man ein Makefile erstellt das man dann mit Geany aufruft.

Leider gibt es keine anständige Projektverwaltung in Geany.

Gruß Gizno

Antworten