据我所知,如果有多个具有相同名称和相同数量参数的函数,编译器会尝试找到最佳匹配(到目前为止我是对吗?)
我不明白的是类型提升和类型转换之间的区别。
说我有这个函数decleration:void foo (double x)
然后在main:
int x = 5;
foo(x);
这被视为转换或促销吗?
答案 0 :(得分:2)
答案 1 :(得分:-3)
你的榜样不会工作
你需要有2个重载方法
1。)void foo(double x){method code}和
2。)void foo(int x){method code}
然后当你运行代码
int x = 5;
FOO(5)
编译器或运行时环境根据您传入的输入类型知道要调用哪个方法。
如果我想将int转换为不同的double。我不确定您使用的语言是什么,但在Java中,您可以使用类型转换
进行转换这是类型转换,并将double转换为int。如果有小数部分,你将会丢失小数部分。
双d = 5; int i =(int)d;
我认为这就是你要问的。如果没有请澄清一点