AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Fehler bei Klassendeklaration

Ein Thema von faux · begonnen am 8. Jun 2005 · letzter Beitrag vom 8. Jun 2005
Antwort Antwort
Benutzerbild von faux
faux

Registriert seit: 18. Apr 2004
Ort: Linz
2.044 Beiträge
 
Turbo Delphi für Win32
 
#1

Fehler bei Klassendeklaration

  Alt 8. Jun 2005, 20:30
Ich habe folgende Klasse;
Delphi-Quellcode:
interface

uses
  StdCtrls, JvSimScope, Classes, JvSwitch, Controls, Windows, Messages,
  JvDialButton, Graphics;

type
  TPatient = record
    Puls: Byte;
  end;

type
  TEkg = class(TGroupBox)
    (...)
    vPatient: TPatient;
    (...)
  public
    constructor Create(AOwner: TComponent); override;
    (...)
  end;
jedenfalls gibts in Zeile 15 immer einen Fehler:
Code:
[Fehler] Unit2.pas(20): Das Published-Feld 'vPatient' ist weder vom Typ class noch interface
Was bedeutet das???
Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#2

Re: Fehler bei Klassendeklaration

  Alt 8. Jun 2005, 20:40
Du kannst keine Records publizieren Aber: Da dein Record nur ein Feld hat, publiziere doch das Feld

Optimal wäre natürlich, den Record in eine Klasse unzuwandeln.
  Mit Zitat antworten Zitat
Benutzerbild von Sanchez
Sanchez

Registriert seit: 24. Apr 2003
Ort: Neumarkt Stmk
892 Beiträge
 
Delphi XE6 Enterprise
 
#3

Re: Fehler bei Klassendeklaration

  Alt 8. Jun 2005, 20:41
Hallo,

Das bedeutet ganz einfach, dass TPatient weder eine Klasse noch ein Interface ist. Steht doch dort
Im published-Abschnitt dürfen keine Variablen, wie Records, usw. stehen. Was Variablen angeht ist der published-Abschnitt den Komponenten vorbehalten.

Eine Variable hat dort auch nichts verloren. Die gehört nach private oder protected. Je nachdem, ob Nachfahren drauf zugreifen können sollen.

grüße, daniel
Daniel
Testen ist feige!
  Mit Zitat antworten Zitat
Benutzerbild von faux
faux

Registriert seit: 18. Apr 2004
Ort: Linz
2.044 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Fehler bei Klassendeklaration

  Alt 8. Jun 2005, 21:14
Ok, danke...

Der record hätte mit nur einer Variable auch wenig Sinn, ich habe ihn nur nicht vervollständigt, nachdem ich sah, dass es nicht funktioniert...
Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat
Benutzerbild von Sanchez
Sanchez

Registriert seit: 24. Apr 2003
Ort: Neumarkt Stmk
892 Beiträge
 
Delphi XE6 Enterprise
 
#5

Re: Fehler bei Klassendeklaration

  Alt 8. Jun 2005, 21:25
Nein. Ich meinte, dass Member-Variablen nicht nach public oder published gehören.
Membervariablen gehören geschützt und von außen nur durch Funktionen und Properties verändert.
Daniel
Testen ist feige!
  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 19:09 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