Pergunta

Ação não parecem apoio de parâmetros de seqüência de caracteres[] como uma param por isso escrevi

delegate void WriteFn(string s, params string[] ls);

eu tenho esta função

void blah(WriteFn Write, string fmt, params string[] a)

Agora eu gostaria de escrever uma função, mas eu não consigo entender a sintaxe de fora.É algo como

{
    var sw = ...
    blah(new WriteFn(s, ls) { sw.write(s, ls); }, fmt, a);
    //not what i want to do but close enough. remember sw isnt a param in WriteFn

Como posso escrever isso?

Foi útil?

Solução

Sua pergunta não está clara. Devemos adivinhar que sw é um StreamWriter? Nesse caso, parece que isso funcionaria:

blah((s, ls) => sw.Write(s, ls), fmt, a);

Outras dicas

Eu acho que você não pode fazer isso porque listas de argumento variável é NÃO compatível com métodos anônimos, de acordo com MSDN.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top