1

我做了一个 Matrix 实现,它有一个重载的operator *. 如果有 2 个大小不兼容的矩阵,我想抛出ArgumentExceptionInvalidOperationException. 我应该使用哪一个?或者,也许它的移动方便声明我自己的?

4

1 回答 1

4

绝对创建自己的MismatchingDimensionsException.

您的用户不会被这样的异常所迷惑,他们会立即知道问题所在。这是处理矩阵时经常发生的问题。

现在,您是从 ArgumentException 还是 InvalidOperationException 派生出来的?我会说前者,但后者同样有意义。如果您使用自己的异常类,则影响较小。

于 2012-06-07T17:20:32.640 回答