在 C# 中使用自定义构造函数创建异常 [重复]

Posted

技术标签:

【中文标题】在 C# 中使用自定义构造函数创建异常 [重复]【英文标题】:Create Exception with a custom constructor in C# [duplicate] 【发布时间】:2015-09-13 16:46:45 【问题描述】:

我想使用构造函数创建一个自定义异常,该构造函数获取一些上下文并自行构建其消息。在 Java 中,这看起来像(参见 how to create custom exception with a number in constructor in Java)

public MyException(String message, IContext context)
    super(message + " " + context.someData);

然而,在 C# 中,编译器告诉我 base() 在这种情况下无效。

public MyException(IContext context)

    base(String.Format("Context is: 0", context));

怎么了?

【问题讨论】:

【参考方案1】:

C# 语法是:

public MyException(IContext context)
    : base(String.Format("Context is: 0", context))


【讨论】:

以上是关于在 C# 中使用自定义构造函数创建异常 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

dotnet C# 如果在构造函数抛出异常 析构函数是否会执行

如何通过使用自定义构造函数而不调用析构函数来创建具有初始大小的向量? [复制]

为啥需要自定义异常类[重复]

设置自定义异常的消息而不将其传递给基本构造函数

构造函数和析构函数

unity c#怎么调用析构函数