Bonjour,
J'ai un peu de mal à comprendre comment utiliser cette classe. Je déclare
une variable :
Private DicForm As Dictionary(Of String, ParamForm) = Nothing
où ParamForm est une structure, et la clé d'accès est une chaîne de
caractère. Mais quand je veux créer une instance en spécifiant la capacité
initiale :
DicForm = New Dictionary(20)
j'obtiens une erreur, alors que cette forme figure parmi la liste de
surcharge. Dès lors je suis un peu perdu. Quelqu'un peut-il m'expliquer ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Patrick Philippot
Bonjour,
Gilbert Tordeur wrote:
Private DicForm As Dictionary(Of String, ParamForm) = Nothing DicForm = New Dictionary(20)
j'obtiens une erreur, alors que cette forme figure parmi la liste de surcharge. Dès lors je suis un peu perdu. Quelqu'un peut-il m'expliquer ?
Dictionary(Of String, ParamForm) et Dictionary sont 2 types différents. La ligne
DicForm = New Dictionary(20)
essaie donc d'affecter une référence à une instance de Dictionary à une variable de type Dictionary(Of String, ParamForm), ce qui est illégal. la syntaxe correcte est:
DicForm = New Dictionary(Of String, ParamForm)(20)
Cordialement.
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr
Bonjour,
Gilbert Tordeur wrote:
Private DicForm As Dictionary(Of String, ParamForm) = Nothing
DicForm = New Dictionary(20)
j'obtiens une erreur, alors que cette forme figure parmi la liste de
surcharge. Dès lors je suis un peu perdu. Quelqu'un peut-il
m'expliquer ?
Dictionary(Of String, ParamForm) et Dictionary sont 2 types différents. La
ligne
DicForm = New Dictionary(20)
essaie donc d'affecter une référence à une instance de Dictionary à une
variable de type Dictionary(Of String, ParamForm), ce qui est illégal. la
syntaxe correcte est:
DicForm = New Dictionary(Of String, ParamForm)(20)
Cordialement.
--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr
Private DicForm As Dictionary(Of String, ParamForm) = Nothing DicForm = New Dictionary(20)
j'obtiens une erreur, alors que cette forme figure parmi la liste de surcharge. Dès lors je suis un peu perdu. Quelqu'un peut-il m'expliquer ?
Dictionary(Of String, ParamForm) et Dictionary sont 2 types différents. La ligne
DicForm = New Dictionary(20)
essaie donc d'affecter une référence à une instance de Dictionary à une variable de type Dictionary(Of String, ParamForm), ce qui est illégal. la syntaxe correcte est:
DicForm = New Dictionary(Of String, ParamForm)(20)
Cordialement.
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr
Gilbert Tordeur
"Patrick Philippot" a écrit dans le message de news:
Bonjour,
Gilbert Tordeur wrote:
Private DicForm As Dictionary(Of String, ParamForm) = Nothing DicForm = New Dictionary(20)
j'obtiens une erreur, alors que cette forme figure parmi la liste de surcharge. Dès lors je suis un peu perdu. Quelqu'un peut-il m'expliquer ?
Dictionary(Of String, ParamForm) et Dictionary sont 2 types différents. La ligne
DicForm = New Dictionary(20)
essaie donc d'affecter une référence à une instance de Dictionary à une variable de type Dictionary(Of String, ParamForm), ce qui est illégal. la syntaxe correcte est:
DicForm = New Dictionary(Of String, ParamForm)(20)
Cordialement.
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr
Merci beaucoup Patrick. J'ai toujours été dérouté par la lecture de deux paires de parenthèses successives. Connais-tu un article de fond à lire sur ce sujet ? Bonne soirée, Gilbert
"Patrick Philippot" <patrick.philippot@mainsoft.xx.fr> a écrit dans le
message de news: OmSNqtQBIHA.464@TK2MSFTNGP02.phx.gbl...
Bonjour,
Gilbert Tordeur wrote:
Private DicForm As Dictionary(Of String, ParamForm) = Nothing
DicForm = New Dictionary(20)
j'obtiens une erreur, alors que cette forme figure parmi la liste de
surcharge. Dès lors je suis un peu perdu. Quelqu'un peut-il
m'expliquer ?
Dictionary(Of String, ParamForm) et Dictionary sont 2 types différents. La
ligne
DicForm = New Dictionary(20)
essaie donc d'affecter une référence à une instance de Dictionary à une
variable de type Dictionary(Of String, ParamForm), ce qui est illégal. la
syntaxe correcte est:
DicForm = New Dictionary(Of String, ParamForm)(20)
Cordialement.
--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr
Merci beaucoup Patrick. J'ai toujours été dérouté par la lecture de deux
paires de parenthèses successives. Connais-tu un article de fond à lire sur
ce sujet ?
Bonne soirée,
Gilbert
"Patrick Philippot" a écrit dans le message de news:
Bonjour,
Gilbert Tordeur wrote:
Private DicForm As Dictionary(Of String, ParamForm) = Nothing DicForm = New Dictionary(20)
j'obtiens une erreur, alors que cette forme figure parmi la liste de surcharge. Dès lors je suis un peu perdu. Quelqu'un peut-il m'expliquer ?
Dictionary(Of String, ParamForm) et Dictionary sont 2 types différents. La ligne
DicForm = New Dictionary(20)
essaie donc d'affecter une référence à une instance de Dictionary à une variable de type Dictionary(Of String, ParamForm), ce qui est illégal. la syntaxe correcte est:
DicForm = New Dictionary(Of String, ParamForm)(20)
Cordialement.
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr
Merci beaucoup Patrick. J'ai toujours été dérouté par la lecture de deux paires de parenthèses successives. Connais-tu un article de fond à lire sur ce sujet ? Bonne soirée, Gilbert
Patrick Philippot
Gilbert Tordeur wrote:
Merci beaucoup Patrick. J'ai toujours été dérouté par la lecture de deux paires de parenthèses successives. Connais-tu un article de fond à lire sur ce sujet ?
Je ne vois pas pour le moment. Une recherche sur "VB generics" devrait pointer sur de tels articles.
En fait il faut voir les parenthèses de Dictionary(Of String, ParamForm) non pas comme des parenthèses de passage d'arguments mais comme des parenthèses de transtypage. C'est l'équivalent VB des templates du C++. Le type Dictionary est "paramétrable", le type réel à utiliser étant passé à la compilation.
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr
Gilbert Tordeur wrote:
Merci beaucoup Patrick. J'ai toujours été dérouté par la lecture de
deux paires de parenthèses successives. Connais-tu un article de fond
à lire sur ce sujet ?
Je ne vois pas pour le moment. Une recherche sur "VB generics" devrait
pointer sur de tels articles.
En fait il faut voir les parenthèses de Dictionary(Of String, ParamForm) non
pas comme des parenthèses de passage d'arguments mais comme des parenthèses
de transtypage. C'est l'équivalent VB des templates du C++. Le type
Dictionary est "paramétrable", le type réel à utiliser étant passé à la
compilation.
--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr
Merci beaucoup Patrick. J'ai toujours été dérouté par la lecture de deux paires de parenthèses successives. Connais-tu un article de fond à lire sur ce sujet ?
Je ne vois pas pour le moment. Une recherche sur "VB generics" devrait pointer sur de tels articles.
En fait il faut voir les parenthèses de Dictionary(Of String, ParamForm) non pas comme des parenthèses de passage d'arguments mais comme des parenthèses de transtypage. C'est l'équivalent VB des templates du C++. Le type Dictionary est "paramétrable", le type réel à utiliser étant passé à la compilation.
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr
Gilbert Tordeur
C'est plus clair pour moi maintenant. Merci, Gilbert
"Patrick Philippot" a écrit dans le message de news: %23V%
Gilbert Tordeur wrote:
Merci beaucoup Patrick. J'ai toujours été dérouté par la lecture de deux paires de parenthèses successives. Connais-tu un article de fond à lire sur ce sujet ?
Je ne vois pas pour le moment. Une recherche sur "VB generics" devrait pointer sur de tels articles.
En fait il faut voir les parenthèses de Dictionary(Of String, ParamForm) non pas comme des parenthèses de passage d'arguments mais comme des parenthèses de transtypage. C'est l'équivalent VB des templates du C++. Le type Dictionary est "paramétrable", le type réel à utiliser étant passé à la compilation.
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr
C'est plus clair pour moi maintenant.
Merci,
Gilbert
"Patrick Philippot" <patrick.philippot@mainsoft.xx.fr> a écrit dans le
message de news: %23V%23WEcRBIHA.4584@TK2MSFTNGP03.phx.gbl...
Gilbert Tordeur wrote:
Merci beaucoup Patrick. J'ai toujours été dérouté par la lecture de
deux paires de parenthèses successives. Connais-tu un article de fond
à lire sur ce sujet ?
Je ne vois pas pour le moment. Une recherche sur "VB generics" devrait
pointer sur de tels articles.
En fait il faut voir les parenthèses de Dictionary(Of String, ParamForm)
non pas comme des parenthèses de passage d'arguments mais comme des
parenthèses de transtypage. C'est l'équivalent VB des templates du C++. Le
type Dictionary est "paramétrable", le type réel à utiliser étant passé à
la compilation.
--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr
C'est plus clair pour moi maintenant. Merci, Gilbert
"Patrick Philippot" a écrit dans le message de news: %23V%
Gilbert Tordeur wrote:
Merci beaucoup Patrick. J'ai toujours été dérouté par la lecture de deux paires de parenthèses successives. Connais-tu un article de fond à lire sur ce sujet ?
Je ne vois pas pour le moment. Une recherche sur "VB generics" devrait pointer sur de tels articles.
En fait il faut voir les parenthèses de Dictionary(Of String, ParamForm) non pas comme des parenthèses de passage d'arguments mais comme des parenthèses de transtypage. C'est l'équivalent VB des templates du C++. Le type Dictionary est "paramétrable", le type réel à utiliser étant passé à la compilation.
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr