首页 > 解决方案 > 如何区分ascii值和数字?

问题描述

我在问 C++ 中是否有任何方法可以区分 ASCII 值和数字,例如'A'65两者的值都是 65,但是如何区分它们呢?

假设我们想对两个数字求和,所以sum(10,65)应该返回 75,但sum(10,'A')应该返回 0。另外,请记住 的参数sum()应该具有相同的类型,即double.

标签: c++c++11visual-c++c++14

解决方案


使用重载函数。您的条件很短(为所有非双精度参数类型返回 0):

double sum(double a, double b) { return a + b; }

template <typename A, typename B>
double sum(A a, B b) { return 0; }

推荐阅读