出现在作用域中的两个函数,如果具有相同的名字而形参表不同,则称为重载函数。
重载函数在作用域方面特别要注意:
上面 的函数里面的fcn()函数就覆盖了全局函数init();
再看下例:
因为在函数fooBar()里面声明了print(int)函数,所以调用print函数时就会找具有int类型的形参,这样前面的声明的重载函数就会被隐藏。
当传递一个double参数时,编译器会隐式的转换为int参数进行匹配。
本文探讨了在编程中函数重载的概念及其在不同作用域内的表现,特别是局部声明如何影响全局函数的可见性,并举例说明了重载函数在特定上下文中可能遇到的问题。
出现在作用域中的两个函数,如果具有相同的名字而形参表不同,则称为重载函数。
重载函数在作用域方面特别要注意:
上面 的函数里面的fcn()函数就覆盖了全局函数init();
再看下例:
因为在函数fooBar()里面声明了print(int)函数,所以调用print函数时就会找具有int类型的形参,这样前面的声明的重载函数就会被隐藏。
当传递一个double参数时,编译器会隐式的转换为int参数进行匹配。
846
668

被折叠的 条评论
为什么被折叠?
&spm=1001.2101.3001.5002&articleId=6537114&d=1&t=3&u=449ec355cade464fbf7736f0ee14c0da)