Wieso wird die Methode nicht geladen

Dizzy_Ti

Vice Admiral Special
Mitglied seit
11.11.2001
Beiträge
667
Renomée
0
Standort
Düsseldorf
Hi ,
erstmal mein Code:


Code:
#include <vcl.h>
#pragma hdrstop
#include <math.h> 
#include "RSAU.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{

}
//---------------------------------------------------------------------------void TForm::ziehen()

bool TForm1::primer(int zufallszahl)
 {        int i=0;
       ShowMessage("R");
       for (int tester=1;tester<=zufallszahl;tester++)
       {
         ShowMessage(zufallszahl);
       if (zufallszahl%tester==0&&tester!=zufallszahl)
           {
             i=0;
             ShowMessage(zufallszahl);
              break;
           }
        if (zufallszahl%tester!=0&&tester==zufallszahl)
           {
              ShowMessage(zufallszahl);
              i=1;
              break;
           }
        if (zufallszahl%tester==0&&tester==zufallszahl)
         {
               ShowMessage(zufallszahl);
                 i=1;
                 break;
          }

      }

      if (i==1)
       {
       return true;
       }
       else
       {
       return false;
       }
     
 }
 void TForm1::ziehen()
 {

 randomize();
 RSA Alice;
 RSA Bob;

 Alice.y= random(20)+1;
 Bob.p=random(20)+1;
 int pruf;
 bool x;
 x=true;
x=primer(Alice.y);

 
int hilf;
  while (x==false)
   {
    Alice.y=random(20)+1;
    x=primer(Alice.y);
   }
   x=primer(Bob.p);
   while (x==false)
    {
    Bob.p=random(20)+1;
    x=primer(Bob.p);
    }

 if (Alice.y>Bob.p)
   {
   hilf=Bob.p;
   Bob.p=Alice.y;
   Alice.y=hilf;
   }




 
  memaus->Lines->Add("Y von  Alice"+AnsiString(Alice.y));
  memaus->Lines->Add("P von Bob"+AnsiString(Bob.p));

 memaus->Lines->Add("Gewählte Zahl von Alice "+AnsiString(Alice.zahl));
  memaus->Lines->Add("Gewähle Zahl von Bob "+AnsiString(Bob.zahl));
  Alice.zwischenerg=pow(Alice.y,Alice.zahl);
  Alice.zwischenerg=Alice.zwischenerg%Bob.p;
  memaus->Lines->Add(AnsiString (Alice.y)+"hoch" +AnsiString (Alice.zahl) +"%" +AnsiString(Bob.p)+" ergibt"+AnsiString(Alice.zwischenerg));
  Bob.zwischenerg=pow(Alice.y,Bob.zahl);
    Bob.zwischenerg= Bob.zwischenerg%Bob.p;
     memaus->Lines->Add(AnsiString (Alice.y)+"hoch" +AnsiString (Bob.zahl) +"%" +AnsiString(Bob.p)+" ergibt"+AnsiString(Bob.zwischenerg));
       memaus->Lines->Add("Zwischenergebnis Alice:"+AnsiString(Alice.zwischenerg));
       memaus->Lines->Add("Zwischenergebnis Bob:"+AnsiString(Bob.zwischenerg));
     hilf=Bob.zwischenerg;
     Bob.zwischenerg=Alice.zwischenerg;
     Alice.zwischenerg=hilf;
     memaus->Lines->Add("Getauschte Zahlen von Alice:"+AnsiString(Alice.zwischenerg));
     memaus->Lines->Add("Getauschte Zahlen von Bob"+AnsiString(Bob.zwischenerg));
   Alice.erg=pow(Alice.zwischenerg,Alice.zahl);
   Alice.erg=Alice.erg%Bob.p;
   memaus->Lines->Add(AnsiString(Alice.zwischenerg)+"hoch" +AnsiString (Alice.zahl)+"%"+AnsiString(Bob.p)+"ergibt"+AnsiString(Alice.erg));
     Bob.erg=pow(Bob.zwischenerg,Bob.zahl);
   Bob.erg=Bob.erg%Bob.p;
      memaus->Lines->Add(AnsiString(Bob.zwischenerg)+"hoch" +AnsiString (Bob.zahl)+"%"+AnsiString(Bob.p)+"ergibt"+AnsiString(Bob.erg));

  }

//---------------------------------------------------------------------------
void __fastcall TForm1::btnstartClick(TObject *Sender)
{
ziehen();
}

Wieso wird die Methode primer nicht geladen , obwohl es beim kompilieren keinen Fehler gibt ?
 
hi,

hmm auf den ersten blick is eigentlich alles ok :]
aber das is es immer ;D

hab schon ewig nix mehr geproggt
man kann doch so "haltepunkte" setzen wo das program wärend des ausführens stehn bleibt um zu sehn was in den variablen steht ...

ansonsten würd ich mal in ein progger forum gehn :P
 
Ich hab den ganzen Quelltext einfach in neues Projekt kopiert und dann hats plötzlich funktioniert.
@ default-X

Diesmal wars wirklich alles ok *G*.Thx für die Antwort.
 
oh son ähnliches problem hatten wir auch in der schule ;D
alles ok aber es geht nüscht ... neues projekt und siehe da tadaaa ;D

naja ich geb einfach mal MS die schuld *buck*
 
Wieso MS? Sieht mir nach CPPBuilder aus und der ist von Borland.
Hab ich was verpasst?
 
@Tiku
Du hast nix verpasst , dass ist Code für den Borland C++ Builder.
Edit: Neues Problem in umgekehrter Reihenfolge
Code:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop
#include <iostream.h>
#include <fstream.h>
#include "NotepadU.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
//AN DIESER STELLE ÖFFNET SICH EINE METHODE
  }
//---------------------------------------------------------------------------

void __fastcall TForm1::openClick(TObject *Sender)
{
memaus->Clear();
Dateien datei;
int i=0;
  dlgopn->Filter="*.*";
   if (dlgopn->Execute())
{
 i=1;
  if (FileExists(dlgopn->FileName))
   {
     datei.dateiname=dlgopn->FileName;
     datei.ea.open(datei.dateiname.c_str(),ios::in);
       while (datei.ea.good())
        {
     datei.ea.getline(datei.puffer,249);
      datei.ausgabe=datei.ausgabe+datei.puffer+"\n";
         }
         memaus->Lines->Add(datei.ausgabe);
         }
         }
          else
         {
         MessageBox(NULL,"Datei existiert nicht","Fehlermeldung",MB_ICONWARNING);
          }
           if (i==0)
          {
          MessageBox(NULL,"Keine Datei ausgewählt","FEHLEMELDUN",MB_ICONWARNING);
          }


}
Dateien::Dateien()
{

puffer=new char[250];
}
//---------------------------------------------------------------------------

void __fastcall TForm1::SpeichernClick(TObject *Sender)
{
dlgsave->Filter=".txt";
 Dateien datei;
 int i=0;
 if (dlgsave->Execute())
   {
    datei.dateiname=dlgsave->FileName;
     i=1;
    }

   if (i==1)
    {
    datei.ea.open(datei.dateiname.c_str(),ios::out);
    datei.inhalt=memaus->Text;
    datei.ea<<datei.inhalt.c_str();
    }
    if (datei.ea.good())
     {
     MessageBox(NULL,"Dateien wurde fehlerfrei erstellt","Nachricht",MB_OK);
     }
   if (i==0)
    {
    MessageBox(NULL,"Bitte geben Sie einen Dateinamen an","Fehlermeldung",MB_ICONWARNING);
    }


}
//---------------------------------------------------------------------------


void __fastcall TForm1::SUCHEClick(TObject *Sender)
{
 int i=0;
 int nr;

     AnsiString test;


 if (dlgfind->Execute())
  {

   Sleep(3000);
  test=dlgfind->FindTextA;
  dlgfind->FindTextA=test;
  ShowMessage(test);

  }
  
}
//---------------------------------------------------------------------------

void __fastcall TForm1::SchriftartClick(TObject *Sender)
{
  Schrift schrift;
if (dlgfont->Execute())
   {
    dlgfont->MaxFontSize=50;
    dlgfont->MaxFontSize=10;
    schrift.Schriftname=dlgfont->Font->Name;
 
            if (AnsiString(dlgfont->Font->Color)!="")
               {
             dlgfont->Font->Color=memaus->Font->Color;
                schrift.farbe=memaus->Font->Color;
                }
                schrift.schrifgro=dlgfont->Font->Size;
                 ShowMessage(schrift.schrifgro);

                memaus->Font->Size=schrift.schrifgro;
                memaus->Font->Name=schrift.Schriftname;
                 
   }

    bool test;
     fstream schreib;
      AnsiString schriftart;
      int gr;
         if(dlgsave->Execute())
          {
         AnsiString name=dlgsave->FileName;
         ShowMessage(name);
     
    schreib.open(name.c_str(),ios::out);

      schreib<<schrift.Schriftname.c_str()<<endl;
      schreib<<AnsiString(schrift.schrifgro).c_str()<<endl;
      schreib<<schrift.farbe.c_str()<<endl;

      schreib.close();
              }


}
 
void TForm1::laden()
 {
 fstream ein;     

 dlgopn->Execute();
 AnsiString name;
 name=dlgopn->FileName;
 ein.open(name.c_str(),ios::in);

 AnsiString alles[3];
 char *puffer;
 puffer=new char[250];

  ein.getline(puffer,249);
 alles[0]=puffer;
 MessageBox(NULL,alles[0].c_str(),"test",MB_OK);
 ein.getline(puffer,249);
 alles[1]=puffer;
 MessageBox(NULL,alles[1].c_str(),"test",MB_OK);
// ein.getline(puffer,249);
//alles[2]=puffer;

  ein.close();

    delete puffer;
    memaus->Font->Name=alles[0];
    memaus->Font->Size=StrToInt(alles[1]);


   }

//---------------------------------------------------------------------------



void __fastcall TForm1::Wrterzhlen1Click(TObject *Sender)
{
int wortzahler;
AnsiString alles=memaus->Lines->GetText();
int lange=alles.Length();
for (int i=0;i<alles;i++)
 {
   if (alles.SubString(i,1)==" ")
   {
   ShowMessage("TEST");
   wortzahler++;
   }
 }
}
//---------------------------------------------------------------------------
Nach ich eine Methode zum Wörtzählen intigriert habe ich eine Methode , die vorher zu Test zwecken direkt beim starten des programms augerufen habe entfernt. Jetzt wird diese Methode trotzdem noch sofort ausgeführt , obwohl ich den Methodenaufruf entfernt habe. Selbst nach dem ich aus der Header Datei die Methode Deklaration und aus der Cpp die Methodedefinition auskommentiert habe , konnte diese Methode noch ausgeführt werden. Woran kann das liegen ?


 
Zuletzt bearbeitet:
wird wohl ein ähnliches problem sein wie beim ersten mal ;)

schon mal compiler neu gestartet ...
oder neu gebootet ;D

ich denk das da irgendwo noch was im speicher rumhängt :]

p.s. borland is auch nich mehr was es einmal war ...
nachdem MS alle guten progger aufgekauft haben typisch 8-(
 
Mir bleibt wieder nix anderes übrig als alles wieder einmal zu kopieren. Langsam wird das richtig nervig.
 
Hey, es ist Borland, da wundert mich sowas nicht.:P

TiKu (der wo mit dem JBuilder arbeiten muss und neben ihm auch Delphi nicht abkann)
 
Zurück
Oben Unten