Method New()

Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Neue Antwort erstellen

tedy

Betreff: Method New()

BeitragMo, Dez 08, 2008 18:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo

Ich wollte jetzt in der Method New() reinschreiben das er sich slebst in eine liste eintragen soll
DAfür habe ich mir folgendes ausgedacht

Code: [AUSKLAPPEN]
   
   Method New()
      objlist.addlast(obj)
   End Method


Alledings klappt der code ja nicht weil ich dort ja noch nicht die Varible obj habe :/
Gibt es dafür eine möglichkeit ?

D2006

Administrator

BeitragMo, Dez 08, 2008 18:42
Antworten mit Zitat
Benutzer-Profile anzeigen
Benutz Self.
Intel Core i5 2500 | 16 GB DDR3 RAM dualchannel | ATI Radeon HD6870 (1024 MB RAM) | Windows 7 Home Premium
Intel Core 2 Duo 2.4 GHz | 2 GB DDR3 RAM dualchannel | Nvidia GeForce 9400M (256 MB shared RAM) | Mac OS X Snow Leopard
Intel Pentium Dual-Core 2.4 GHz | 3 GB DDR2 RAM dualchannel | ATI Radeon HD3850 (1024 MB RAM) | Windows 7 Home Premium
Chaos Interactive :: GoBang :: BB-Poker :: ChaosBreaker :: Hexagon :: ChaosRacer 2

Geeecko

BeitragMo, Dez 08, 2008 18:42
Antworten mit Zitat
Benutzer-Profile anzeigen
In Methoden kannst du self benutzen.
Also ...addlast(self).
Self gibt immer das Objekt zurück, welches die methode aufruft.
Schaus dir einfach ein bißchen an!

lg MD

Edit: Böser D2006! Sad

Blitzcoder

Newsposter

BeitragMo, Dez 08, 2008 21:21
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
Self gibt immer das Objekt zurück, welches die methode aufruft.


Welchem die Methode angehört. Aufgerufen werden kann sie von außen.
P4 3 Ghz@3,55Ghz|GF 6600GT 256MB|Samsung 80GB | 2x Samsung 160GB|2048MB DDR-400 RAM|6 Mbit Flatrate | Logitech G15 | Samsung 225BW-TFT | Ubuntu Gutsy Linux | Windows Vista | Desktop | Blog | CollIDE | Worklog
________________
|°°°°°°°°°°°°°°||'""|""\__,_
|______________ ||__ |__|__ |)
|(@) |(@)"""**|(@)(@)****|(@)

Nexhmije

BeitragDi, Dez 09, 2008 22:34
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich mache das anders, per Funktion.

Code: [AUSKLAPPEN]
TType.Create()

Um ein Objekt der Klasse TType zu erstellen. In dieser ist dann die Funktion Create deklariert:

Code: [AUSKLAPPEN]
Function Create:TType()
     Local NewType:TType = New TType
     ...
     ...
     ListAddLast NewType, TypeList
EndFunction


Ob bei ListAddLast zuerst der Eintrag oder die Liste angegeben wird weiß ich nicht, ist ja jetzt auch egal.

Ist an dieser Lösung etwas auszusetzen? Wenn nein, dann könntest du es ja so machen. ^^

BladeRunner

Moderator

BeitragMi, Dez 10, 2008 18:13
Antworten mit Zitat
Benutzer-Profile anzeigen
TTypelist.addlast(newtype) wäre im Sinne von OOP richtiger ,sonst ist das durchaus tragbar.
Wobei es durchaus auch legitim wäre new() zu überladen, da ja auch die Create-Function nichts anderes macht als erstmal new() aufzurufen.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group