ARRAY OF <T>

Forum dedicato ai programmatori di X# in lingua italiana – Italian language forum

Moderator: wriedmann

Post Reply
Fab64
Posts: 63
Joined: Mon Nov 23, 2015 12:26 pm

ARRAY OF <T>

Post by Fab64 »

Salve a tutti
Dopo aver fatto pratica sugli ARRAY volevo vedere la sintassi degli array Tipizzati ( attualmente uso l'ultima release pubblica di X# )
questo breve programmino di test viene compilato senza errori ma quando lo eseguo segnala l'errore all'istruzione A1d[II] := II

LOCAL A1, A2, A3, A4 AS ARRAY
LOCAL A1d, A2d, A3d, A5 AS ARRAY OF DWORD
LOCAL II, AS DWORD

A1 := ArrayCreate(300000) // A1 inizializzato a 300000 elementi
A1d := ArrayCreate<DWORD>(300000) // A1d inizializzato a 0 elementi
FOR II := 1 UPTO 300000
A1[II] := II
A1d[II] := II // errore runtime
NEXT

l' errore è questo:

Hello X# runtime!

Eccezione non gestita: System.ArgumentOutOfRangeException: Argomento specificato
non compreso nell'intervallo.
in XSharp.__ArrayBase`1.set_Item(Int32 index, T value)
in XSharpRuntimeApp1.Exe.Functions.Start() in C:XIDEProjectsProject1Appli
cationsXSharpRuntimeApp1PrgStart.prg:riga 17

Ovviamente perchè A1d attualmente non ha elementi ( array vuoto)

A questo punto mi chiedevo cosa ho sbagliato ad inizializzare l'array

Saluti,
Fabrizio
User avatar
robert
Posts: 4520
Joined: Fri Aug 21, 2015 10:57 am
Location: Netherlands

ARRAY OF <T>

Post by robert »

Fabricio,

This is a bug in the ArrayCreate<T> function.

Try this in stead (for now):

Code: Select all

A1d := __ArrayBase<DWORD>{300000, TRUE}
We will fix the ArrayCreate<T> for the next build.

Robert
XSharp Development Team
The Netherlands
robert@xsharp.eu
Fab64
Posts: 63
Joined: Mon Nov 23, 2015 12:26 pm

ARRAY OF <T>

Post by Fab64 »

Thank you, Robert.

Fabrizio
Post Reply