Laden...

feste Array Länge als Übergabeparameter

Erstellt von Muphin vor 17 Jahren Letzter Beitrag vor 17 Jahren 1.312 Views
M
Muphin Themenstarter:in
174 Beiträge seit 2006
vor 17 Jahren
feste Array Länge als Übergabeparameter

Guten morgen!

Weiß einer von euch ob es möglich ist bei einer funktion die ein Array als Übergabeparameter hat diesen so festzulegen dass man eine bestimmte Array-Länge übergeben muss?
Also in etwa sowas:


fkt( int intAr[5] )

Gruß Muphin

T
243 Beiträge seit 2006
vor 17 Jahren

Nein, das geht nicht. Du musst die Länge in der Methode überprüfen und dann evtl. abbrechen oder eine Exception werfen, wenn diese nicht stimmt.

L
770 Beiträge seit 2006
vor 17 Jahren
Größe?

Hallo,

eine möglichkeit wäre, dass Array due größe zu "trimmen", da musst du aber sichergehen dass keine wichtigen datenverloren gehen. Das ganze kannst du mir der Klassenmehtode Resize machen:

 Array.Resize(ref array, neue Größe);

Also einfach Array.Resize(ref intAr,5).
Dann hat dein Array 5 Einträge und kannst es übergeben.

lg Lion

M
Muphin Themenstarter:in
174 Beiträge seit 2006
vor 17 Jahren

Sowas hat ich schon vermutet, dann werd ich das ganze denk ich mit nem resize absichern!
Dankeschön!

B
1.529 Beiträge seit 2006
vor 17 Jahren

Nein wirst du nicht. Bitte.
Wirf eine ArgumentException. Das ist der einzig richtige Weg. Der Aufrufer muss deine Methode mit den richtigen Parametern aufrufen. Die Methode darf doch nicht rumraten, was der Aufrufer meint. Das ist jetzt wirklich mal ein Grund für eine Exception und dann wollt ihr sowas machen...