Total Anfängerfrage - Wie mache ich eine eigene Prozedure?
-
Hallo,
sorry für die frage, aber ich benutze c++ builder zum 1. mal.
wie kann ich eine eigene prozedure definieren?
in Delphi ging das so:private procedure test; ... procedure TForm1.test; begin end;
aber wie geht das in c++ builder?
-
Der Quellcode, den du dort gepostet hast, ist in Pascal geschrieben.
Pascal erkennst du daran, dass:1. keine Klammern um den Parametern zu sehen sind
2. der Funktionsrumpf mit begin anfängt und mit ende endet.du findes im BCB Pascalcode, da die Libary in Pascal geschrieben wurde. Daher musst du dich in der Hilfe nicht verwirren lassen.
übersetzt in C++ wäre es so:
private : void test(); ... void TForm1::test() { }
lese doch bitte eines der Tutorials auf der Startseite dieses Forums. DOrt werden dir derartige Grundlagen gut erklärt.
-
Moment mal... wieso sind in Pascal keine Klammern um Parameter zu sehen?
Es ist zwar schon eine ganze Weile her, aber... soweit ich mich erinnere... sah ein Procedure-Kopf doch z.B. in etwa so aus:procedure MeineFunktion (x: Integer, VAR y : Float) : Integer begin (*...hier kommt die Substanz rein...*) return (0); (*...hätte fast den Rückgabewert vergessen ;-) *) end;
Ah... das waren Zeiten... und gar keine schlechten...
Stimmt das eigentlich, was ich da geschrieben hab?
-
Tilsiter schrieb:
Moment mal... wieso sind in Pascal keine Klammern um Parameter zu sehen?
Es ist zwar schon eine ganze Weile her, aber... soweit ich mich erinnere... sah ein Procedure-Kopf doch z.B. in etwa so aus:Keine Klammern gibts bei Funktionen und Prozeduren ohne Argumente, ansonsten schon. Ist übrigens in Ada und Eiffel auch so.
return (0); (*...hätte fast den Rückgabewert vergessen
In Pascal gibts auf jeden Fall keine return-Anweisung, da weist man dem Funktionsnamen das Ergebnis zu, etwa so:
function double(x : integer): integer begin double := 2 * x end;
Im Gegensatz zu return ist dabei kein Sprung aus der Funktion impliziert. AFAIK wurde das in Delphi so erweitert, dass man auch an die Pseudo-Variable Result zuweisen kann.
-
sooo... nachdem wir nach 3 Kommentaren zu einem anderen Thema übergegangen sind, ohne die Frage zu beantworten:
Das funktioniert fast genauso wie in Delphi:
private: int Add(int Zahl, int Zahl2); [...] // Irgendwo im Quelltext außerhalb aller Funktionen: int Add(int Zahl, int Zahl2) { return (Zahl+Zahl2); }
Ist damit deine Frage beantwortet?
-
Windoof schrieb:
Ist damit deine Frage beantwortet?
Das war sie doch schon nach AndreasW's Post? Die restlichen Posts waren nur Delphispezifisch, da Tilsiter offensichtlich nicht wusste, dass Pascal Prozeduren (ohne Parameter) und Funktionen kennt.
-junix
-
junix schrieb:
Das war sie doch schon nach AndreasW's Post? Die restlichen Posts waren nur Delphispezifisch, da Tilsiter offensichtlich nicht wusste, dass Pascal Prozeduren (ohne Parameter) und Funktionen kennt.
Na, na, na... ich will ja keine Haare spalten, aber Prozeduren sind nicht unbedingt ohne Parameter, sondern ohne Return-Value. Durch fas Fehlen des Return-Values unterscheiden sie sich von Funktionen.
Mir war nur nicht klar, warum in Pascal "keine Klammern um die Parameter zu sehen sind", was aber vermutlich nur ein Missverständnis war.
-
was aber vermutlich nur ein Missverständnis war.
ja.
Ich nehm den ersten Punkt zurück. Gilt natürlich nur, wenn keine Parameter da sind. *schäm*