Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Prism Pointer in Delphi.NET (https://www.delphipraxis.net/64533-pointer-delphi-net.html)

moritz 4. Mär 2006 22:22


Pointer in Delphi.NET
 
Moin!

Ich bin zur Zeit dabei, mich von Delphi Win32 auf Delphi.NET umzugewöhnen und scheitere gerade an Pointern - Der Compiler meldet dauernd etwas von unsicheren Pointern.

Erstmal der Code (Unwichtiges ist raus):
Code:
unit uMetaphive;

interface

uses Borland.Vcl.Classes;

type

  [...]

  TCard = record
    // Zeigt auf den Spieler, dem die Karte gehört
    Player:      PPlayer; <-- HIER

    // Gibt an, ob die Karte auf dem Spielfeld liegt
    InGame:      Boolean;

    // Gibt die Position der Karte auf dem Spielfeld an
    Pos:         TPos;

    // Gibt die vier Werte der Karte an
    Values:      TValues;
  end;
  PCard = ^TCard;

  // TGame:
  // Fasst das aktuelle Spiel zusammen
  TGame = class
    // Die im Spiel verwendeten Karten
    Cards:       TList;

    // Die geltenden Regeln
    Rules:       TRules;    
  public
    // Zeichnet das Spielfeld
    function Draw(ATarget: Byte; APos: TPos): Boolean;

    // Verarbeitet, wenn eine Karte gelegt wird
    function Process(ACard: PCard; APos: TPos): Boolean; <-- HIER
  end;

...
An den markierten Stellen bekomme ich Fehler von wegen
Code:
[Pascal Fehler] uMetaphive.pas(60): E2397 Unsicherer Zeiger nur beim Compilieren mit {$UNSAFECODE ON} zulässig
[Pascal Fehler] uMetaphive.pas(86): E2410 Unsichere Zeigervariablen, Parameter oder Konstanten sind nur in unsicheren Prozeduren zulässig
Kann mir da wer nen Tipp geben?

Gruß

sakura 4. Mär 2006 22:28

Re: Pointer in Delphi.NET
 
Wenn Du sauber .NET programmieren willst, dann solltest Du anfangen andere Lösungen zu finden, als Pointer. Unter managed und sicherem Code sind diese verboten.

...:cat:...

moritz 4. Mär 2006 22:29

Re: Pointer in Delphi.NET
 
Okay.... Welche gute Alternative bietet sich in Delphi.NET denn für mich bzw. gibt es irgendwo ein Umsteigertutorial (Ich hab bisher leider nichts brauchbares gefunden)

Gruß

Dax 4. Mär 2006 22:32

Re: Pointer in Delphi.NET
 
Nimm doch statt record einfach class ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:24 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz