Zum Inhalt springen

header-file


cadman

Empfohlene Beiträge

hi,

ich möchte mir einen eigenen kleine header-file anlegen und per include anweisung einbinden. wie unten dargestellt habe ich eine "fc_math.h" und eine "fc_math.cpp" datei, aber irgendwie klappt es nicht. weiß jemand rat ?

fc_math.h

--------------------------------------

#ifndef FC_MATH_H

#define FC_MATH_H

class fc_math

{

public:

fc_bogenm();

fc_grad();

virtual ~fc_math();

protected:

private:

};

#endif // FC_MATH_H

fc_math.cpp

-------------------------------------------

#include "fc_math.h"

// Umwandlung Grad in Bogenmass

double fc_bogenm(double grad)

{

return (grad / 180.0 * 3.1415927);

}

// Umwandlung Bogenmass in Grad

double fc_grad(double bogenmass)

{

return (bogenmass / 3.1415927*180.0);

}

Link zu diesem Kommentar
Auf anderen Seiten teilen

Eine ordentliche Fehlerbeschreibung ist immer hilfreich. Mit "irgendwie klappt es nicht" kann man nichts anfangen.

Wenn du deine Methoden außerhalb der Klassendefinition definierst, musst du den Klassennamen dazuschreiben:

double fc_math::fc_bogenm(double grad)

Und lass den virtuellen Destruktor weg, das ist Unsinn.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi,

fc_bogenm();

du hast eine Funktion, die nichts erwartet, du übergibst aber...

fc_bogenm(double);

Außerdem musst du erst ein Objekt erstellt, was du nicht tust. Deine Syntax ist falsch. Richtig wäre:


...

using namespace std;


// Ein Objekt blah vom Typ fc_math erstellen...

fc_math blah;


int main()

{


cout << "\n" << blah.fc_bogenm(45.0);


} 

Link zu diesem Kommentar
Auf anderen Seiten teilen

ich dachte man könnte die funktionen einfach auslagern, dann im progi dazuladen, um sie dann mit ihrem "normalen" namen zu nutzen
Was meinst du mit "normalem Namen"? War fc_bogenm vorher eine freie Funktion, und du hast sie nur zum "Auslagern" in eine Klasse gesteckt?

Wenn du eine Methode einer Klasse aufrufen willst, musst du das wie gezeigt machen. Das hat nichts damit zu tun, ob diese Klasse in einer eigenen Codedatei samt Header liegt.

steht irgendwo schritt für schritt erkälrt, wie ich einen headerfile anzulegen habe ?
Dein Headerfile ist völlig in Ordnung, wenn man davon absieht, dass die Signaturen der Methoden nicht auf die Definitionen passen.

Zeig doch mal, wie dein ganzes Programm ohne "Auslagern" aussehen würde. Vielleicht lässt sich dann nachvollziehen, wo das Verständnisproblem liegt.

Link zu diesem Kommentar
Auf anderen Seiten teilen

#include <cstdlib>

#include <iostream>

#include <math.h>

#include <stdio.h>

#include <K:\Programmieren\c++\Bibliotheken\fc_math\fc_math .h>

using namespace std;

// Umwandlung Grad in Bogenmass

double fc_bogenm(double grad)

{

return (grad / 180.0 * 3.1415927);

}

int main()

{

cout << "\n" << fc_bogenm(45.0);

}

Link zu diesem Kommentar
Auf anderen Seiten teilen

also wenn ich ehrlich bin, hat es mein compiler automatisch angelegt :rolleyes:
Ein Compiler legt keine Codedateien an, allenfalls tut das deine Entwicklungsumgebung. Das ist dann aber ein Bedienproblem.

fc_math.h sollte so aussehen:

#ifndef FC_MATH_H
#define FC_MATH_H

double fc_bogenm(double grad);

#endif // FC_MATH_H[/code] Und fc_math.cpp so:
[code]double fc_bogenm(double grad)
{
return (grad / 180.0 * 3.1415927);
}

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...