2009-03-12 4 views

Répondre

9

Quelques choses ici:

La définition doit correspondre à l'initialisation. Vous êtes en train de définir Dictionnaire et instancier Dictionnaire < TKey, TValue >. Ce que cela signifie, en fonction de ce que vous dites ici:

Dictionary<string, double[][]> dict = new Dictionary<string, double[][]>(); 

Je suppose que c'est ce que vous voulez. Si oui, votre code pourrait être quelque chose comme ceci:

double[] d1 = { 1.0, 2.0 }; 
    double[] d2 = { 3.0, 4.0 }; 
    double[] d3 = { 5.0, 6.0, 7.0 }; 

    double[][] dd1 = { d1 }; 
    double[][] dd2 = { d2, d3 }; 

    Dictionary<string, double[][]> dict = new Dictionary<string, double[][]>(); 
    dict.Add("dd1", dd1); 
    dict.Add("dd2", dd2); 

Si c'est cela, votre problème est résolu.

7

Juste va mettre à jour ma réponse pour inclure la déclaration correcte comme pour les autres réponses:

Dictionary<String,double[][]> = new Dictionary<String,double[][]>(); 

Alsoyours est un tableau du tableau et non un MultiDimensional un .. Je ne sais pas si c'est ce que vous voulez ..

Si vous voulez un MultiDimensio Tableau final, il est

Dictionary<String,double[,]> = new Dictionary<String,double[,]>(); 
+0

côté gauche doit être soit var ou Dictionnaire NikolaiDante

+0

Pas encore tout à fait raison ... – Ant

4

Vous devez aussi qualifier complètement le type de la variable, non seulement de ce que vous allez allouer:

Dictionary<String,double[][]> dictLocOne = new Dictionary<String,double[][]>(); 
3

Essayez

var dict = new Dictionary<String, double[,]>(); 
+0

-1, alors que cela est correct, il n'aide vraiment pas à répondre à la question. Il se cache juste du développeur, qui dans ce cas ne sait pas comment déclarer la variable. – Samuel

1

Exemple:

var d = new Dictionary<string, double[,]>();

d["foo"] = new[,] { { 0.1, 1.0 }, { 0.2, 2.0 }, { 0.3, 3.0 } };