Zum Inhalt springen

Borland Builder C++ 1.0 / 4.0: Bei Exceptions anhalten


piomode1

Empfohlene Beiträge

Hi, Leute!

Problem eines Neulings: :(

Ich arbeite mit einem Buch für den Borland C++ Builder 1

und der Software Borland C++ Builder 4.0

und bin bei

try { }

catch (...) { }

steckengeblieben.

Im Buch (für v1) steht, daß bei Verwendung von try/catch folgendes einzustellen ist, damit das Konstrukt greifen kann:

Optionen | Umgebung | Bei Exceptions anhalten (Deaktivieren)

Ich habe schon diverse Einstellungen in den Debugger-Optionen ausprobiert.

Ohne Erfolg: Es erscheint bei fehlerhaften Eingaben nach wie vor eine System-MessageBox mit einer Fehlermeldung.

Die vielen (mich überflutenden) Möglichkeiten in den Optionen sagen mir aber (noch) nichts.

Wo finde ich den entsprechende Einstellung in der v4? :confused:

Danke schon mal für Eure Hilfe!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi, Klotzkopp!

Das ist ein weiteres Problem:

In C++ bin ich blutigster Anfänger. Aber ich gebe nicht auf!

Zu Deiner Frage: Ich glaube nicht (, daß der Excp.-Auslöser dort steht).

Es sieht sinngem. folgendermaßen aus:

-----

//Anfang

try

{

if (x == 1) lblAusgabe -> Caption = "sehr gut";

'u.s.w'

if (x == 6) lblAusgabe -> Caption = "ungenügend";

}

catch (...)

{

lblAusgabe -> Caption = "Falsche Eingabe";

}

//Ende

-----

(Der Code steht in der ButtonClick-Prozedur eines Buttons.)

Wenn ich es so bedenke kommt es ja zu keinem Fehler im try-Block.

Bei einer Eingabe kleiner 1 bzw. größer 6 ist zwar kein if erfüllt, aber: Dann eben nichts...

Ich habe das try/catch auch als ein "else" verstanden: Wenn nichts im try-Block ausgeführt wird, dann kommt der catch-Block.

-----

Aus:

"C++ für Kids", Hans-Georg Schumann, mitp-Verlag Bonn, 2. Auflage

S.92: "Ein bestimmter Abschnitt eines Programms wird (...) nur versuchsweise ausgeführt. Wenn es klappt, (...) gut. Wenn nicht, dann wird eine Aktion zur Fehlerbehandlung gestartet, die du selbst bestimmst."

-----

Ein zu behandelnder Fehler ist z.B. die Eingabe von Buchstaben. Und da hatte ich gedacht, try/catch ist für solche Fälle gedacht...

Wie komme ich weiter?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi, Klotzkopp!

Ich bin blind:

Natürlich habe ich die Zeile vergessen, in der einer int-Variable das Ergebnis einer Division zugewiesen wird. :rolleyes:

Das Problem hat sich auch erledigt. Ich habe den Sinn und Zweck der try/catch-Anweisung jetzt ebenso verstanden.

Ich mußte unter BBC++4.0 nur[/] folgendes deaktivieren:

Integrierte Fehlerbehandlung zulassen (o.ä.)

Dieser Threat kann geschlossen oder besser noch gelöscht werden...

Vielen Dank für Deine Hilfe!! :)

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