Articles of clr

Por que o C # não está permitindo funções não-membro, como C ++

C # não permitirá escrever funções que não sejam membros e todo método deve fazer parte de uma class. Eu estava pensando isso como uma restrição em todos os idiomas da CLI. Mas eu estava errado e descobri que C ++ / CLI suporta funções não-membro. Quando é compilado, o compilador fará o método como […]

C # ‘é’ desempenho do operador

Eu tenho um programa que requer desempenho rápido. Dentro de um de seus loops internos, eu preciso testar o tipo de um object para ver se ele herda de uma determinada interface. Uma maneira de fazer isso seria com a funcionalidade interna de verificação de tipos do CLR. O método mais elegante provavelmente é a […]

Resolvendo MSB3247 – Encontrado conflitos entre diferentes versões do mesmo assembly dependente

Uma solução .NET 3.5 acabou com esse aviso ao compilar com msbuild. Às vezes o NDepend pode ajudar, mas neste caso não deu mais detalhes. Como Bob , acabei tendo que recorrer à abertura de cada assembly no ILDASM até encontrar o que estava referenciando uma versão mais antiga do assembly dependente. Eu tentei usar […]

Capacidade de pilha em c #

Alguém poderia me dizer qual é a capacidade da pilha em C #. Eu estou tentando formar um object fechado de malha 3D usando uma matriz de 30.000 itens.

Em C ++ / CLI, o que o personagem hat faz?

Eu estava lendo o Beginning Visual C ++ 2008 de Ivor Horton e muitos de seus exemplos de CLR têm essa definição para main: int main(array ^args) Voltei, página por página, ao início do livro para encontrar o primeiro exemplo com uma explicação do que ele realmente significa, mas não consegui encontrar um. Obviamente, isso […]

Por que os genéricos C # não podem derivar de um dos parâmetros de tipo genérico, como em modelos C ++?

Por que os genéricos C # não podem derivar de um dos parâmetros de tipo genérico como eles podem nos modelos C ++? Quer dizer, eu sei que é impossível porque o CLR não suporta isso, mas por quê? Estou ciente das profundas diferenças entre modelos C ++ e genéricos C # – os primeiros […]

As variables ​​não inicializadas do C # são perigosas?

Eu estou familiarizado com a especificação C #, seção 5.3, que diz que uma variável deve ser atribuída antes do uso. Em C e em C ++ não gerenciado, isso faz sentido, pois a pilha não está desmarcada e a localização da memory usada para um ponteiro pode estar em qualquer lugar (levando à dificuldade […]

Quais são as raízes?

Quais são as raízes na garbage collection? Eu li a definição de raiz como “qualquer referência que você programa pode acessar para” e definição de ao vivo é que um object que está sendo usado, que pode ser uma variável local, variável estática. Estou pouco confuso com a discriminação da diferença entre objects raiz e […]

Um guia definitivo para alterações de quebra de API no .NET

Gostaria de reunir o máximo de informações possível sobre o versionamento de API no .NET / CLR e, especificamente, como as alterações da API afetam ou não os aplicativos clientes. Primeiro, vamos definir alguns termos: Alteração de API – uma alteração na definição publicamente visível de um tipo, incluindo qualquer um de seus membros públicos. […]

LINQ no tempo de execução do .NET 2.0

Um aplicativo habilitado para LINQ pode ser executado em uma máquina que possui apenas o runtime do .NET 2.0 instalado? Em teoria, o LINQ nada mais é do que o açúcar sintático, e o código IL resultante deve ter a mesma aparência que teria no .NET 2.0. Como posso escrever o LINQ sem usar as […]