Klassen / konstruktor - destruktor



  • Hallo, ich hab mal wieder ein neues problem, in mom schreibe ich ein Verschlüsselungsprogramm, habs auch schon fertig, aber erstmal nur ohne klassen so jetzt will ich das ganze mit klassen schreiben und jetzt habe ich folgendes problem.

    ich hab eine hauptprogramm.cpp, krypt.cpp und kryppt.h

    krypt.cpp code:

    #include "krypt.h"
    
    Tkrypt::Tkrypt(AnsiString text, AnsiString pw, int texti, int pwi)
     {
    	as_word = text;
    	as_pass = pw;
    	i_length_word = texti;
    	i_lenght_pass = pwi;
     }
    
    Tkrypt::Tkrypt(AnsiString text, int texti)
     {
    	as_word = text;
    	i_length_word = texti;
     }
    
    AnsiString Tkrypt::get_EORencode()
    {
     AnsiString encode;
     return encode;
    }
    

    krypt.h

    #ifndef class_krypt
    #define class_krypt
    
    #include <vcl.h>
    class Tkrypt
    {   private:AnsiString as_word;
    			AnsiString as_pass;
    			int i_length_word;
    			int i_lenght_pass;
    	public:
    			Tkrypt();
    			Tkrypt(AnsiString,AnsiString,int,int); // Konstruktor
    			Tkrypt(AnsiString,int);  // Konstruktor
    			~Tkrypt(){};
    
    			AnsiString get_EORencode(void);
    
    };
    #endif
    

    So ich arbeite jetzt mit Konstruktor weil ich 3 unterschiedliche verschlüsselungsarten habe bei einem muss nur einmal der Text und die Länge gegeben werden und bei den anderen zwei Text und Pw und die jeweilige Länge. Das problem was ich jetzt habe ist in im hauptprogramm.cpp drauf zu zugreifen.

    hauptprogramm.cpp

    //---------------------------------------------------------------------------
    
    #include <vcl.h>
    #pragma hdrstop
    
    #include "hauptfenster.h"
    #include "krypt.h"
    //---------------------------------------------------------------------------
    #pragma package(smart_init)
    #pragma resource "*.dfm"
    Tfrm_hauptfenster *frm_hauptfenster;
    
    Tkrypt krypt;
    

    So das problem ist das ich nur auf get_EORencode zugreifen kann wenn Tkrypt krypt da steht aber dann bekomme ich immer die fehlermeldung:
    "[Linker Fehler] Error: Ungelöste externe 'Tkrypt::Tkrypt()'"
    aber weiß nicht was daran falsch ist ich denke mal das liegt an den Konstruktor aber bin mir nicht sicher weiß jemand rat wie ich das machen kann?

    Danke im voraus 😉



  • krypt.h

    ...
    			static AnsiString get_EORencode(void);
    ...
    

    hauptprogramm.cpp

    if(x!=Tkrypt::get_EORencode())
    


  • c++ unterforum


Anmelden zum Antworten