Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我如何检查结果是否是正确的类型(int、float、double 等),然后抛出并捕获异常以防万一?
谢谢大家,
弗拉德。
您能否提供更多有关什么给您“结果”的详细信息,您可以从那里确定您需要什么,并且更有可能以更好的方式确定。
如果您真正想要的只是检查类型,请使用typeid. 更多信息在这里
typeid
按照丹尼尔的编辑帖子模型,在陈述其他内容后实际回答问题......
从我的其他评论:
在获得结果之前,您必须这样做。之后检查溢出不是一个好主意。在添加之前检查数字以查看它们是否会溢出,或将输入限制为小于类型最大值的一半
使用 C++ 在运行时无法知道这一点。这些将是编译时错误。
要回答您的第二个问题,您必须手动检查缓冲区溢出/下溢或使用更合适的数据类型。
您将得到的最接近的是dynamic_cast。