发布网友 发布时间:2023-10-08 13:59
共5个回答
热心网友 时间:2023-11-04 10:59
c++重载的概念:热心网友 时间:2023-11-04 11:00
不知道你哪里看到的第一段话的说辞,总之我是赞同后面的说法,只有当派生类的函数与基类的函数同名,参数也相同时才发生隐藏,也就是直接调用派生类的函数。而当函数同名,但是参数不同时,发生的是重载,当调用函数时,系统会自动匹配参数类型,只会调用符合条件的函数,这样说不知道你能不能理解追问我能明白你的意思,但是我是刚学C++没上手,你看楼上那个推荐答案,就是网上很多人赞同的总结,那个(1)就跟你说的矛盾,我也不知道哪个对
热心网友 时间:2023-11-04 11:00
派生类定义的函数和基类定义的函数不管形参是否一样都会被覆盖!用派生类对象直接调用被覆盖的基类定义的函数版本会报错!为了使用基类的版本可以使用,用using关键字可以引入名字。追问请问在类中想实现函数重载,必须把同名不同类的函数写在同一个类中吗,如果一个写在基类,一个写在派生了,即便函数类型不相同也会被覆盖吗?主要我看运算符<<可以在基类,派生类分别定义然后实现了重载,函数就不可以吗
热心网友 时间:2023-11-04 11:01
就是一个数组函数 将其可以简单的定义为 某个方法新的参数热心网友 时间:2023-11-04 11:01
重载与覆盖追答函数重载是在同一作用域,重载的函数都属于基类,或都属于派生类。
同名函数一个在基类,一个在派生类,没加virtual,不管参数是否相同,在派生类中基类的同名函数自动隐藏,不过可以加上基类类名显示调用。
覆盖是对于虚函数而言。