1 votes

Puis-je définir une variable comme style d'initalisation après l'initalisation ? C#

Je peux le faire.

var v = new class_name() { media_id = m, fn = fullfn2 };

Puis-je faire quelque chose comme ceci

set v { media_id = m, fn = fullfn2 };

2voto

Gerrie Schenck Points 13421

Non, mais vous pouvez faire ceci

var v = new { media_id = m, fn = fullfn2 };

2voto

Voice Points 539

Non. Cette syntaxe est uniquement destinée à l'initialisation.

1voto

Noon Silk Points 30396

En VB.NET, vous pouvez, avec la fonction with mot-clé (je crois).

Mais ce que vous essayez de faire semble vraiment horrible. Il suffit de les définir explicitement. C'est presque exactement la même quantité de code.

0voto

João Angelo Points 24422

Le compilateur dit non.


Mais vous pouvez faire toutes sortes de choses bizarres comme ça :

class Foo
{
    public int Bar { get; set; }

    public string Name { get; set; }
}

public static void Main(string[] args)
{
    Foo f = new Foo { Bar = 1, Name = "1" };

    Console.WriteLine("{0}.{1}", f.Bar, f.Name);

    Action<Foo> set = (Foo foo) => { foo.Bar = 2; foo.Name = "2"; };

    set(f);

    Console.WriteLine("{0}.{1}", f.Bar, f.Name);
}

0voto

Mark Arnott Points 1137

Non

Set est un mot-clé qui définit les accesseurs des propriétés. Il ne peut pas être utilisé pour attribuer des valeurs aux propriétés ou aux champs.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X