要将浮点数传递给只接受整数的构造函数,可以使用强制类型转换来实现。下面是一个示例代码:
#include
class IntegerConstructor {
public:
IntegerConstructor(int num) {
std::cout << "IntegerConstructor: " << num << std::endl;
}
};
int main() {
double floatNum = 3.14;
int intNum = static_cast(floatNum);
IntegerConstructor obj(intNum);
return 0;
}
在上述示例中,我们首先将浮点数 floatNum
转换为整数 intNum
,使用 static_cast
实现强制类型转换。然后,我们将 intNum
作为参数传递给只接受整数的构造函数 IntegerConstructor(int num)
。
请注意,这种方法只适用于不需要浮点数部分的情况。如果您需要保留浮点数部分或进行舍入,您可能需要使用其他方法来处理。