cil 相关问题

Common Intermediate Language是.NET Framework和Mono使用的面向对象的汇编语言。 .NET语言编译为CIL,CIL被组装成具有字节码样式格式的目标代码。

使用ILASM编译IL为EXE失败

我花了几个小时试图找出问题所在。我知道该程序是有效的,因为我通过在 MonoDevelop 中调试 .il 进行了测试,但是我无法通过它进行编译。这是来自

回答 3 投票 0

为 VB.NET 和 C# 生成的 IL 差异

今天我在玩实体框架,我读到为 C# 生成的 IL 与 VB.NET 的以下代码不同: VB.NET: Dim ctx 作为新的 TravelEntities 子主函数()

回答 2 投票 0

编译器为什么要添加不必要的局部变量

这个C#代码: private void LoadAssignments(AssignmentType 分配类型,Collection 分配) { 布尔标志; 数据表课程 = this.GetResults(assignmentT...

回答 2 投票 0

显式空检查与空合并运算符的编译器评估?

考虑以下代码,它使用两种略有不同的方法来检查 _instance 并在尚未设置时对其进行分配。 类实例化测试 { 私有对象_实例; 公共空间

回答 1 投票 0

C# 编译器不会优化不必要的转换

几天前,在为这个问题写一个关于溢出的答案时,我对 C# 编译器感到有点惊讶,它没有做我期望它做的事情。看下面的代码片段...

回答 3 投票 0

C# 编译优化:空合并运算符 - 更新 - Reflector 的 bug?

您好!我对 C# 编译器如何执行优化有点困惑。 我编写了以下 getter 来弥补“惰性”初始化,以及 null 情况下的默认值: 斯塔...

回答 2 投票 0

为什么调用未重写的结构方法需要装箱?

根据调用 ToString() 时对结构进行装箱,在 C# 结构上调用未重写的方法会导致其被装箱。这最终是因为 callvirt IL 指令的约束方式

回答 1 投票 0

在.NET中生成大文件

我想询问有关 .NET 可执行文件的两件事: .NET 可执行文件是 PE 格式。这是否意味着CIL编译器生成的地址是从文件开头开始的(address+size_of_he...

回答 1 投票 0

C#编译器生成的.exe文件是否仅由通用中间语言(CIL)组成?

我只是想更好地了解将以下代码添加到文件并以 .cs 扩展名保存时在简单场景中会发生什么: 公开课HelloWorld { 公共静态v...

回答 2 投票 0

对 C# MAUI 感到困惑 - #if <platform> 是如何工作的?

我正在使用 VS 17.11 和 MAUI 8。 有很多关于“依赖注入”的文章,包括基于平台的文章。 但这样的事情似乎也是可能的: #如果是IOS ...

回答 1 投票 0

MS C# 编译器和非优化代码

注意:我注意到我发布的示例中存在一些错误 - 进行编辑以修复它 如果您不启用优化,官方 C# 编译器会执行一些有趣的操作。 例如,一个简单的 if 语句: 我...

回答 3 投票 0

编译时出现奇怪问题,然后反编译Select Case

在更改以下 VB.net 代码时,我看到一些奇怪的行为。这是原始源代码: 私有函数 ValidateSelectedId(ByVal PurposeId As String) As Boolean ...

回答 1 投票 0

我可以强制编译器优化特定方法吗?

是否有一个属性可以用来告诉编译器必须始终优化方法,即使未设置全局 /o+ 编译器开关? 我之所以问这个问题是因为我正在考虑这个想法......

回答 3 投票 0

为什么 C# 编译器为 GetType() 方法调用发出 callvirt 指令?

我很好奇为什么会发生这种情况。 请阅读下面的代码示例以及每个部分下面的注释中发出的相应 IL: 使用系统; 班级计划 { 静态...

回答 5 投票 0

为什么这个 (null || !TryParse) 条件会导致“使用未分配的局部变量”?

以下代码导致使用未分配的局部变量“numberOfGroups”: int 组数; if(options.NumberOfGroups == null || !int.TryParse(options.NumberOfGroups, out

回答 3 投票 0

C# 的“is”运算符会在 .NET 4 上的发布模式优化下受到影响吗?

下面是一个简单的测试夹具。它在调试版本中成功,在发布版本中失败(VS2010、.NET4 解决方案、x64): [测试治具] 公共密封等级测试 { [测试] 公共无效测试检查...

回答 4 投票 0

为什么没有额外分配内存

当我进行以下基准测试时,基准信息表明没有额外的内存分配。但是,将结构转换为接口并不涉及...

回答 1 投票 0

Mono.Cecil weaver 错误的分支目标

我正在尝试使用 Mono.Cecil 将一些检测代码编织到现有方法中 - 基本上只是所有序列点之前的日志。这很简单,我可以迭代所有序列

回答 1 投票 0

如何使用cil在.NET上创建新的语言和编译器

好吧,我又提起一个老话题了。 凭借.NET的开源和生态发展,以及.NET平台本身的优势,开发一门...

回答 1 投票 0

为什么 C# 中的托管模块比非托管模块更快 [已关闭]

我读了一本书(CLR via c#),书中作者谈到了IL和托管模块,托管模块在本机cpu代码中编译,然后在书中执行,作者说托管模块是f...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.