在.NET中,为什么不能在抛出它的方法中捕获BadImageFormatException?

 手机用户2502880437 发布于 2023-02-12 15:53

当我声明一个在引用的Visual C++程序集中定义的Visual C++类型的变量时,我不会被引发的BadImageFormatException所吸引,因为我对这个异常未被catch子句捕获这一事实感到好奇.紧接着变量声明的try-catch语句,但是try-catch语句的catch子句围绕方法调用声明变量的方法.

    public static void method()
    {
        try
        {
            Some_Visual_Cpp_Type o;
        }
        catch (Exception)
        {
            Console.WriteLine("caught inside the method");//apparently not called
        }
    }
    public static void Main()
    {
        try
        {
            method();
        }
        catch (BadImageFormatException)
        {
            Console.WriteLine("caught outside the method");//prints "caught outside the method"
        }
    }

有人可以解释一下这种行为吗?

1 个回答
  • 当方法为JIT时,在其catch块存在之前抛出此异常.

    2023-02-12 15:55 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有