Existe tipo range no C#?  XML
Índice dos Fóruns » Outras Linguagens
Autor Mensagem
matheuslmota
Virtual Machine Man

Membro desde: 09/03/2010 15:14:56
Mensagens: 664
Offline

O tipo range, que eu conheci no pascal, existe no C#? Caso não exista, existe alguma forma de implementá-lo no C#? Acho isso muito legal para declarar arrays de uma forma mais decente.

Toda vez que você alimenta um troll uma foca morre no Polo Norte.
[MSN]
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline

Exatamente igual, não. Mas há coisas muito parecidas (e muito mais poderosas também) que você pode fazer com LINQ.

Mas para o feijão com arroz que o pascal faz, a sintaxe não ficará tão enxuta:
http://stevenharman.net/blog/archive/2008/02/12/ruby-has-ranges-and-so-does-c.aspx
http://jrwren.wrenfam.com/blog/2007/12/04/the-good-stuff-is-hidden/

@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
matheuslmota
Virtual Machine Man

Membro desde: 09/03/2010 15:14:56
Mensagens: 664
Offline

ViniGodoy wrote:Exatamente igual, não. Mas há coisas muito parecidas (e muito mais poderosas também) que você pode fazer com LINQ.

Mas para o feijão com arroz que o pascal faz, a sintaxe não ficará tão enxuta:
http://stevenharman.net/blog/archive/2008/02/12/ruby-has-ranges-and-so-does-c.aspx
http://jrwren.wrenfam.com/blog/2007/12/04/the-good-stuff-is-hidden/


Hum, já é algo. Mas abusando um pouco da linguagem, será que existe como escrever um código em C# equivalente à este em Delphi?



Esse negócio de usar enum como index de um array em pascal é muito show mesmo. Dá pra fazer algo parecido em C#?

This message was edited 1 time. Last update was at 02/02/2012 21:54:32


Toda vez que você alimenta um troll uma foca morre no Polo Norte.
[MSN]
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline

Acho que com sintaxe tão simples assim, não. Até porque, o C# também não tem suporte a arrays com índice arbitrário.
Você até poderia criar uma classe que simulasse um array assim, e tivesse um construtor estático do tipo:


Mas daria um trabalho enorme, para um resultado extremamente pequeno, e uma sintaxe não tão elegante. =(

@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline

Agora, lindo mesmo eu acho isso aqui:



Eu realmente acho que o Java deveria copiar o LINQ. E o Pascal também.

@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
matheuslmota
Virtual Machine Man

Membro desde: 09/03/2010 15:14:56
Mensagens: 664
Offline

ViniGodoy wrote:Agora, lindo mesmo eu acho isso aqui:



Eu realmente acho que o Java deveria copiar o LINQ. E o Pascal também.


Isso é legal demais. O C# é cheio dessas sintaxes pra fazer coisas simples, como essa manipulação ai, que o Java não implementa.
Agora vetor com índices arbritários do pascal foi algo que eu achei bizarro no começo mas genial depois que eu vi isso sendo usado em uma aplicação onde eu trabalho.

Toda vez que você alimenta um troll uma foca morre no Polo Norte.
[MSN]
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline

O mais perto que o C# chega são os Dictionary (equivalentes ao Map do Java), já que sintaticamente podem ser acessados como se fossem arrays:



Mas não é a mesma coisa, já que os demais índices efetivamente não existem e poderiam ser inseridos a qualquer momento.

@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
matheuslmota
Virtual Machine Man

Membro desde: 09/03/2010 15:14:56
Mensagens: 664
Offline

ViniGodoy wrote:O mais perto que o C# chega são os Dictionary (equivalentes ao Map do Java), já que sintaticamente podem ser acessados como se fossem arrays:



Mas não é a mesma coisa, já que os demais índices efetivamente não existem e poderiam ser inseridos a qualquer momento.


Exatamente, também tinha pensado no Dictionary. Além do mais, isso seria, digamos, uma representação de uma matriz de duas dimensões com indíces específicos. Pra uma matriz de várias dimensões isso já não funcionaria, ou talvez até funcionaria usando algum tipo de adaptação técnica de alta periculosidade (ou seja, gambiarra).

Toda vez que você alimenta um troll uma foca morre no Polo Norte.
[MSN]
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline

É, talvez um Dictionary de Dictionary. Mas aí a coisa começa a ficar bem feia.

@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
 
Índice dos Fóruns » Outras Linguagens
Ir para:   
Powered by JForum 2.1.8 © JForum Team