zoukankan      html  css  js  c++  java
  • 关于函数重载和函数重写的感想

    在C++中存在两种比较难理解的概念

    1、函数重载
    首先在C++中,如果两个函数的作用域相同,然后两个函数的名字相同但是形参不同,这样的两个函数是会形成重载关系的。
    但是对是否是virtual的要求可有可无,而且对返回值类型的要求也可有可无。
    有一点值得注意的是const会影响函数的重载,因为在多个参数的函数中,const会影响参数的优先顺序从而导致两个函数的参数在同一队列,这样就会产生错误,但是这种错误是发生在调用过程中的,也就是说如果不对相关联的函数进行调用,是不会发生错误的。

    2、函数重写
    函数重写在C++中是属于不同的两个类中,而且一定要是虚函数(virtual),如果存在函数名相同、形参列表相同,返回值类型相同(可以不同,但是必须是可以经过某种方式进行转换的),就会形成重写,

    重写和覆盖本质上是同一中语法的不同名称而已。所以在期间一定是发生过继承关系的父子类之间才会形成重写(覆盖)。否则就有可能形成重写
  • 相关阅读:
    harbor无法登陆解决
    k8s中使用harbor
    harbor扩容
    harbor设置开机自启
    设置开机自启
    关Java的内存模型(JMM)
    多线程相关概念
    多线程(JDK1.5的新特性互斥锁)
    synchronized关键字
    【异常】redis.clients.jedis.exceptions.JedisDataException: ERR unknown command 'PSETEX'
  • 原文地址:https://www.cnblogs.com/whl-lin/p/10910533.html
Copyright © 2011-2022 走看看