【发布时间】:2019-06-02 19:42:03
【问题描述】:
在 NeuralNetwork 类中,我定义了嵌套类
public class TrainSetCardinalityMismatch : ArgumentOutOfRangeException
当用户尝试提供的训练集与答案集的元素数量不同时,将抛出此错误,反之亦然。所以在训练集的setter中,我检查元素的数量是否与答案集中的元素数量相匹配,如果不匹配,我把
throw new TrainSetCardinalityMismatch();
但它给了我错误
NeuralNetwork.TrainSetCardinalityMismatch.TrainSetCardinalityMismatch()' 由于其保护级别而无法访问
trainingSet 也是神经网络类的一个字段(这无关紧要,因为错误是公开的),并且不要认为 ArgumentOutOfRangeException 是私有的。
有人有什么想法吗?
【问题讨论】:
-
你的神经网络怎么样?我认为它必须是公开的才能抛出嵌套异常,因为编译器不知道它将在哪里处理。
标签: c# properties inner-classes access-modifiers custom-exceptions