我对引用生疏了,但我知道它们只是变量的另一个名称。离开那个,如果你有一个同名的引用怎么办?为什么会起作用/不起作用?
例如:
foo(int &a) {
printf(a);
}
main() {
int a;
foo(a);
}
谢谢
最佳答案
“为什么它会起作用/不起作用?”
就您的论点名称而言:是,它会起作用。 main中的a
是一个局部变量,标识符a
,指的是这个变量只在同一个作用域内有效。在 foo
中,有一个参数 a
,但是这个 a
是与第一个不同的标识符。
PS:我认为这是:
printf(a);
本来是:
printf("%d", a);
关于c++ - C++ 引用参数可以与参数同名吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19416797/