gpt4 book ai didi

c# - 程序集中类的顺序

转载 作者:太空狗 更新时间:2023-10-30 00:54:54 26 4
gpt4 key购买 nike

什么决定了程序集中类的顺序?

还有..有办法改变它吗?


附加信息:您可以自己通过反射检查顺序,或者您可以使用像 ILDASM 这样的工具,禁用字母排序,然后您也会得到顺序。

顺序似乎是由编译器以一种奇怪的方式确定的。

我已经尝试了一些方法.. 比如重命名类(顺序保持不变),还编辑 .csproj 文件以更改 .cs 文件的顺序。

我主要关注 VS2008、C#、.net 3.5。


更新:我确实遇到了一个顺序很重要的场景(外部程序通过反射通过我的程序集)——我需要特殊的顺序。除此之外 - 你是完全正确的 - 顺序真的不重要。

最佳答案

我要在这里伸出我的脖子说这是一个实现细节,很可能由任何特定的编译器决定。

由于这是一个实现细节,您不应该或不必担心。当然,如果这真的很重要(看不出为什么),您总是可以编写自己的 IL。

我给你留下以下来自 Eric's blog 的引述:

Is compiling the same C# program twice guaranteed to produce the same binary output?

No.

关于c# - 程序集中类的顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11213732/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com