Вопрос

Does the structure of a C# file affect what is compiled?

For example, would the order of members (in terms of where in the file it exists) affect the compiled class?

Это было полезно?

Решение

According to a blog entry from Eric Lippert I read the other day, the compiler does not guarantee two compilations of the same source to end up the same IL. This wasn't about method ordering, though, but I think that applies too - so, I don't think it is safe to assume any method ordering in the compiled class. I also wouldn't expect any connection between source file method ordering and IL method ordering.

Другие советы

While in most cases the order is unimportant, this is not the case with anonymous types:

new{a=1,b=2}

creates a different, incompatible type to

new{b=2,a=1}

there is no guarantee for the order of the members.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top