3

我如何检查结果是否是正确的类型(int、float、double 等),然后抛出并捕获异常以防万一?

谢谢大家,

弗拉德。

4

3 回答 3

5

您能否提供更多有关什么给您“结果”的详细信息,您可以从那里确定您需要什么,并且更有可能以更好的方式确定。

如果您真正想要的只是检查类型,请使用typeid. 更多信息在这里

按照丹尼尔的编辑帖子模型,在陈述其他内容后实际回答问题......

从我的其他评论:

在获得结果之前,您必须这样做。之后检查溢出不是一个好主意。在添加之前检查数字以查看它们是否会溢出,或将输入限制为小于类型最大值的一半

于 2009-08-28T13:41:45.120 回答
4

使用 C++ 在运行时无法知道这一点。这些将是编译时错误。

要回答您的第二个问题,您必须手动检查缓冲区溢出/下溢或使用更合适的数据类型。

于 2009-08-28T13:33:11.590 回答
0

您将得到的最接近的是dynamic_cast

于 2009-08-28T13:33:13.510 回答