AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi const Deklaration in record-typ deklaration
Thema durchsuchen
Ansicht
Themen-Optionen

const Deklaration in record-typ deklaration

Ein Thema von flippinho · begonnen am 3. Mai 2009 · letzter Beitrag vom 4. Mai 2009
Antwort Antwort
flippinho

Registriert seit: 3. Mai 2009
7 Beiträge
 
Delphi 5 Enterprise
 
#1

const Deklaration in record-typ deklaration

  Alt 3. Mai 2009, 21:44
Hallo,

ich habe eine library-Datei heruntergeladen, die ich mit Delphi5 verwenden möchte.
Ich glaube, die Syntax ist von "free Pascal" abgeleitet.
Der Compiler meckert aber and der Stelle
"CAIRO_STATUS_SUCCESS = 0,"
mit der Meldung
" ',' oder ')' erwartet, aber '=' gefunden"

Weiß jemand, was diese Konstruktion bewirkt, und wie ich sie in Delphi 5 umsetzten kann?


type
cairo_status_t = (
CAIRO_STATUS_SUCCESS = 0,
CAIRO_STATUS_NO_MEMORY,
CAIRO_STATUS_INVALID_RESTORE,
CAIRO_STATUS_INVALID_POP_GROUP
};


Danke, Philipp
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.142 Beiträge
 
Delphi 12 Athens
 
#2

Re: const Deklaration in record-typ deklaration

  Alt 3. Mai 2009, 21:52
in D5 ist es noch nicht möglich Enum-Elementen Werte zuzuweisen, aber da hier der erste Wert eh 0 ist, laß einfach das =0 weg.

PS: wir haben hier ein [delphi]-Tag, um Quellcode hübsch darzustellen
Delphi-Quellcode:
type
  cairo_status_t = (
    CAIRO_STATUS_SUCCESS,
    CAIRO_STATUS_NO_MEMORY,
    CAIRO_STATUS_INVALID_RESTORE,
    CAIRO_STATUS_INVALID_POP_GROUP);
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
flippinho

Registriert seit: 3. Mai 2009
7 Beiträge
 
Delphi 5 Enterprise
 
#3

Re: const Deklaration in record-typ deklaration

  Alt 3. Mai 2009, 23:10
Hallo himitsu,

danke für die prompte Antwort.
Leider habe ich in der library auch Konstruktionen, in denen die Wertzuweisung nicht null ist. Gibt es vielleicht in D5 trotzdem einen Möglichkeit, eine entsprechende Konstruktion umzusetzen?


Delphi-Quellcode:

cairo_content_t = (
    CAIRO_CONTENT_COLOR = $1000,
    CAIRO_CONTENT_ALPHA = $2000,
    CAIRO_CONTENT_COLOR_ALPHA = $3000
  );
  Mit Zitat antworten Zitat
Benutzerbild von Mithrandir
Mithrandir
(CodeLib-Manager)

Registriert seit: 27. Nov 2008
Ort: Delmenhorst
2.379 Beiträge
 
#4

Re: const Deklaration in record-typ deklaration

  Alt 3. Mai 2009, 23:14
Delphi-Quellcode:
const
    CAIRO_CONTENT_COLOR = $1000;
    CAIRO_CONTENT_ALPHA = $2000;
    CAIRO_CONTENT_COLOR_ALPHA = $3000;

type
  cairo_status_t = (
    CAIRO_CONTENT_COLOR,
    CAIRO_CONTENT_ALPHA,
    CAIRO_CONTENT_COLOR_ALPHA);
Müsstest du mal testen, kann das grad nicht ausprobieren...
米斯蘭迪爾
"In einer Zeit universellen Betruges wird das Aussprechen der Wahrheit zu einem revolutionären Akt." -- 1984, George Orwell
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.142 Beiträge
 
Delphi 12 Athens
 
#5

Re: const Deklaration in record-typ deklaration

  Alt 3. Mai 2009, 23:21
ich glaub das ging nicht und wenn dem so ist, dann eher so:
Delphi-Quellcode:
const
    CAIRO_CONTENT_COLOR = $1000;
    CAIRO_CONTENT_ALPHA = $2000;
    CAIRO_CONTENT_COLOR_ALPHA = $3000;

type
  cairo_status_t = Word;
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von Mithrandir
Mithrandir
(CodeLib-Manager)

Registriert seit: 27. Nov 2008
Ort: Delmenhorst
2.379 Beiträge
 
#6

Re: const Deklaration in record-typ deklaration

  Alt 3. Mai 2009, 23:24
Äh, ja, macht auch irgendwie Sinn...
米斯蘭迪爾
"In einer Zeit universellen Betruges wird das Aussprechen der Wahrheit zu einem revolutionären Akt." -- 1984, George Orwell
  Mit Zitat antworten Zitat
flippinho

Registriert seit: 3. Mai 2009
7 Beiträge
 
Delphi 5 Enterprise
 
#7

Re: const Deklaration in record-typ deklaration

  Alt 4. Mai 2009, 23:07
Hallo,

die Lösung von himitsu ist wahrscheinlich die beste Umsetzung. Wenn ich die Konstruktion damit ersetzte, brauche ich nur noch an den Stellen, wo der Compiler meckert, die entsprechenden Ausdrücke ersetzten, und es funktioniert.

Schönen Dank an alle, die mir so zügig geholfen haben.


Delphi-Quellcode:
const
    CAIRO_CONTENT_COLOR = $1000;
    CAIRO_CONTENT_ALPHA = $2000;
    CAIRO_CONTENT_COLOR_ALPHA = $3000;

type
  cairo_status_t = Word;
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.142 Beiträge
 
Delphi 12 Athens
 
#8

Re: const Deklaration in record-typ deklaration

  Alt 4. Mai 2009, 23:34
du mußt nur aufpassen ... das WORD hab ich anhand der Konstanten so gelegt,
aber je nach Speicherausrichtung, der Schnittstelle auf der anderen Seite,
müßtest du da eventuell noch was ändern, falls es Probleme gibt.
z.B. nach Integer/LongInt oder Cardinal/LongWord

in C sind z.B. viele Enumeratoren 4 Byte groß,
wärend in Delphi standardmäßig vieles nur 1 Byte ist, da {$MINENUMSIZE 1}
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:02 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz