7
votes

Déclarer 2 types à l'intérieur à l'aide de l'instruction donne une erreur de compilation?

Je veux utiliser cette ligne de code: xxx

ceci donne une erreur de compilation:

ne peut pas utiliser plus d'un type dans un pour, en utilisant, fixe ou déclarté déclaration.

Je pensais que c'était possible? MSDN dit qu'il est: http://msdn.microsoft. com / fr-nous / bibliothèque / yh598w02% 28vs.80% 29.aspx Dans la police de code d'échantillon MSDN est utilisée, qui est la classe et ainsi un type de référence ainsi que mes deux classes DataContext.

Qu'est-ce qui s'est mal passé ici? Comment ma tentative diffère-t-elle de l'échantillon MSDN?


0 commentaires

3 Réponses :


6
votes

Le à l'aide de L'instruction d'acquisition de ressources peut être une déclaration. Une déclaration ne peut déclarer que des variables de type un .

Vous pouvez faire: xxx

mais vous ne pouvez pas xxx


0 commentaires

13
votes

MSDN a déclaré des instances de deux objets du même type. Vous déclarez plusieurs types, d'où le message d'erreur que vous avez reçu.

EDIT: STROND> Pour aller tout "ERIC LIPPERT" à ce sujet, section 8.13 de la spécification de langue indique: P>

Lorsqu'une acquisition de ressources prend la forme d'une déclaration de variable locale, il est possible d'acquérir plusieurs ressources d'un type donné. A Utilisation de l'instruction de la forme EM> p> xxx pré>

est équivalente précisément à une séquence d'instructions imbriquées à l'aide de: em> p>

using (ResourceType r1 = e1)
    using (ResourceType r2 = e2)
        ...
            using (ResourceType rN = eN)
                statement


0 commentaires

12
votes

fais cela à la place xxx


1 commentaires

Je dirais réellement que moins d'accolades équivaut à plus de lisibilité dans ce cas.