Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Dichiarazione di un Array
martedì 30 novembre 2004 - 17.08
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Biscottina
Profilo
| Newbie
18
messaggi | Data Invio:
mar 30 nov 2004 - 17:08
Ciao a tutti avrei bisogno di dichiarare un array, parto dicendovi che io ho definito la seguente classe:
public class StructurFileS
{
public string ID_File;
public string ID_Parent;
public string Path;
public System.Byte[] FCI= new byte [255];
public int Len_FCI;
public int IndexOf;
}
Ora vorrei definire un array che abbia 255 campi tutti strutturati come la classe sopra descritta... Come posso fare???
Bacio da Lucia
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
mer 1 dic 2004 - 09:54
Forse intendi così ?
StructurFileS arr=new StructurFileS[255];
ciao
david
Biscottina
Profilo
| Newbie
18
messaggi | Data Invio:
mer 1 dic 2004 - 14:40
Ok... Io ho dichiarato l'array in quel modo che mi gai descritto tu... :
StructurFileS[] FileSystem =new StructurFileS[255];
Provo ad inizzializzarlo nel seguente modo ....
private int Inizialaze_Array()
{
int ret = 0;
for (int i = 0; i < 255; i++)
{
for (int y = 0; y < 255; y++)
{
FileSystem[i].FCI[y] = 0;
}
FileSystem[i].ID_File ="";
FileSystem[i].ID_Parent = "";
FileSystem[i].IndexOf =-1;
FileSystem[i].Len_FCI =-1;
FileSystem[i].Path = "";
}
return ret;
}
Ma ottengo il seguente errore:
Eccezione non gestita di tipo "System.NullReferenceException"
Informazioni aggiuntive: Riferimento a un oggetto non impostato su un'istanza di oggetto.
Come posso risolvere il problema????
Grazie milleeeee
Bacio Lucia
ysdemarc
Profilo
| Expert
587
messaggi | Data Invio:
mer 1 dic 2004 - 15:56
Scusami ma sembra che nella tua classe manchi il costruttore...
senza di esso non puoi istanziarla..
ciao
Biscottina
Profilo
| Newbie
18
messaggi | Data Invio:
mer 1 dic 2004 - 16:14
Cos'è il costruttore....????
Mi aiuti.... per piacereeeeeeeeeeeeeee
Biscottina
Profilo
| Newbie
18
messaggi | Data Invio:
mer 1 dic 2004 - 16:15
Cos'è un costruttore..... mi aiuti... grazie
Biscottina
Profilo
| Newbie
18
messaggi | Data Invio:
mer 1 dic 2004 - 16:16
Il costruttore c'è ... se guardi bene è presente nel primo thread
ysdemarc
Profilo
| Expert
587
messaggi | Data Invio:
lun 6 dic 2004 - 12:33
Ciao, scusami se rispondo solo ora ma avevo un problema coo firewall e non riuscivo più a vedere il forum.
il costruttore deve stare nella classe. O meglio tut istanzi la classe come se avesse il costruttore èp vero, ma questo amnca nella classe originaria cioè la tua classe:
public class StructurFileS
{
public string ID_File;
public string ID_Parent;
public string Path;
public System.Byte[] FCI= new byte [255];
public int Len_FCI;
public int IndexOf;
}
dovrebbe diventare così
public class StructurFileS
{
public string ID_File;
public string ID_Parent;
public string Path;
public System.Byte[] FCI= new byte [255];
public int Len_FCI;
public int IndexOf;
public StructurFileS()
{
// questo è il costruttore
}
}
se ti posso dare un'altro consiglio non usare dichiarazioni public delle variabili per quando possibili, ma istruzioni private e per la loro lettura crea i metodi opportuni con le property.
Ciao!
ysdemarc
Profilo
| Expert
587
messaggi | Data Invio:
lun 6 dic 2004 - 12:37
scusami ancora ma siono stato poco esatto...
tu la classe la istanzi così:
StructurFileS arr=new StructurFileS[255];
quindi puoi usare il polimorfismo in modo da avere più costruttori e aggiungere anche questo (oppure modificare il costruttore vuoto e mettere solo il seguente):
public StructurFileS(int numByte)
{
FCI= new byte [numByte];
...
}
ok? Ciao
Biscottina
Profilo
| Newbie
18
messaggi | Data Invio:
mer 22 dic 2004 - 14:18
Ecco il pezzo di codice dove dichiaro l'array.
E' corretto???
Aiutatemi...........................
Grazie milleeeeeeeeeeeeeeeeeee
namespace VariabiliGlobali
{
public class Globals
{
public static StructurFileS[] FileSystem =new StructurFileS[255];
public static int CominicationProtocol;
public static int cardConnectionHandle;
}
}
namespace WinscardWrapLibrary
{
public class StructurFileS
{
public string ID_File;
public string ID_Parent;
public string Path;
public System.Byte[] FCI= new byte [255];
public int Len_FCI;
public int IndexOf;
public StructurFileS()
{
// questo è il costruttore
}
}
}
ysdemarc
Profilo
| Expert
587
messaggi | Data Invio:
mer 22 dic 2004 - 17:58
ciao
un istanziamento in questo modo non fa altro che creare una matrice di tipo oggetto dichiarato
cioè in questo modo
public static StructurFileS[] FileSystem =new StructurFileS[255];
dichiari solo una matrice FileSystem di tipo StructureFileS che può contenere fino a 255 oggetti di tipo StructureFileS.
prima di assegnare un valore devi pero assegnare un oggetto all'elemento della matrice
cioè
FileSystem[i] = new StructureFileS();
e poi puoi assegnare i valori
FileSystem[i].ID_File ="";
infatti l'errore è nullRefereceException che significa che tentavi di leggere o scrivere qualcosa che ancora non è stato referenziato.
Fammi sapere come va. Ciao!
Biscottina
Profilo
| Newbie
18
messaggi | Data Invio:
gio 23 dic 2004 - 08:56
...................................Grazieeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee ............................ Grazieeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee................................
Olèèèèèèèèèèèèèèèèèèèèèèèèèèè
olèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèèè
finalmente funzionaaaaaaaaaaaa
sono molto contentaaaa
grazieeee
sei stato gentilissimoooooo
ysdemarc
Profilo
| Expert
587
messaggi | Data Invio:
gio 23 dic 2004 - 09:10
di niente....
mi devi scusare che a rileggere i post la prima volta avevo capito ben poco su quello che dovevi fare...
...sono un pò distartto...
Ciao!
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !