Se ho un metodo come questo:inizializzazione di un array di stringhe in una chiamata di metodo come un parametro in C#
public void DoSomething(int Count, string[] Lines)
{
//Do stuff here...
}
Perché non posso chiamare in questo modo?
DoSomething(10, {"One", "Two", "Three"});
Quale sarebbe la corretta (ma si spera non lungo)?
Perfetto! Potresti spiegare perché è necessario il nuovo []? Se l'ho fatto: string [] MyString = {"One", "Two", "Three"}; funziona bene? –
è proprio come funziona la sintassi. non puoi farlo: var x = string [] {"One", "Two", "Three"}; ma puoi farlo var y = new [] {"One", "Two", "Three"}; –
questi articoli sono molto utili. gli inizializzatori degli oggetti rendono il codice molto più pulito http://weblogs.asp.net/scottgu/archive/2007/03/08/new-c-orcas-language-features-automatic-properties-object-initializers-and-collection-initializers .aspx e per ulteriori informazioni sulla tua domanda originale vedi questo http://msdn.microsoft.com/en-us/library/ms364047(VS.80).aspx#cs3spec_topic7 –