什么函数不能声明为虚函数?_什么函数不能是虚函数-程序员宅基地

技术标签: C/C++  

构造函数、普通函数、inline函数、静态成员函数、友元函数

1、构造函数:因为对象在运行初始化的过程中通过构造函数填充对象前四个字节为虚函数表指针,所以说构造函数是不可以给我虚函数的。

2、普通函数:在实现多态调用虚函数的原理中,第二步是通过ecx寄存器传递this指针,然而普通函数没有this指针,所以不可以作为虚函数。而且普通函数是不可以被重写的。

3、inline函数:内联函数是在编译期间展开的,相当于C语言的宏函数。虚函数需要在运行时动态绑定,所以不可以。

4、静态成员函数:静态成员函数没有this指针,没有办法调用虚函数,所以不可以

5、友元函数:友元函数不属于类的成员函数,原有和普通函数差不多。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_41318405/article/details/98999237

智能推荐

快速玩转 Llama2!机器学习 PAI 最佳实践(二)—全参数微调训练_llama 全参数训练-程序员宅基地

文章浏览阅读1.1k次。本实践将采用阿里云机器学习平台PAI-DSW模块针对 Llama-2-7B-Chat 进行全参数微调。PAI-DSW是交互式建模平台,该实践适合需要定制化微调模型,并追求模型调优效果的开发者。_llama 全参数训练

安捷伦Agilent/惠普HP 4349B高值电阻表_安捷伦4349b-程序员宅基地

文章浏览阅读33次。安捷伦Agilent 4349B高值电阻表的用途:适用于测量各种电器设备、元件测试、电感器、线圈、生产线的电阻,4349B增加测试吞吐率,同时对4通道绝电阻进行测量。Agilent 4349B增加测试吞吐率,同时对4通道绝电阻进行测量。测量时间:9.5 mS / 28 mS / 98 mS / 397 mS。90-132/198-264 伏交流电;快速接触检查:2毫秒/点。输入/输出电阻:1 kohm。测试电缆长度:最长 2 m。GPIB和处理器接口。显示分辨率:3/4/5位。HP-IB 和处理器接口。_安捷伦4349b

【Dubbo】Dubbo入门_hessian 2.0 serialization protocol-程序员宅基地

文章浏览阅读342次。一、Dubbo是什么 分布式服务框架 高性能和透明化的RPC远程服务调用方案 SOA服务治理方案 二、如何使用Dubbo本地服务 <bean id=“xxxService” class=“com.xxx.XxxServiceImpl” /> <bean id=“xxxAction” class=“com.xxx.XxxAction”&..._hessian 2.0 serialization protocol

LSTM 自动编码器进行时间序列数据异常检测_时间序列lstm识别充电桩异常-程序员宅基地

文章浏览阅读1.5k次,点赞31次,收藏16次。本文将介绍并代码演示使用LSTM对时间序列数据进行异常值检测。_时间序列lstm识别充电桩异常

编写一个简单Java程序,计算银行年存款的本息_编写一个java程序,计算存款的利息,用户将输入存款金额和年利率,然后程序计算一年-程序员宅基地

文章浏览阅读1w次,点赞5次,收藏21次。编写一个简单Java程序,计算银行年存款的本息要求:程序运行后要求用户输入存款本金、年利率和存款年限,最后程序计算并输出相应年限后存款的金额。相应的计算公式为:存款总额=本金 * (1 + 利率)存款年限。提示:请检测用户输入的合法性。可以使用Math类来进行次方的运算:Math.pow(底数,指数)。代码块如下package interestCaculation;/** *@auth..._编写一个java程序,计算存款的利息,用户将输入存款金额和年利率,然后程序计算一年

ELK之 kibana 报错master_not_discovered_exception] null or kibana-Request Timeout after 30000ms_unable to connect to elasticsearch. error: request-程序员宅基地

文章浏览阅读6.4k次,点赞5次,收藏5次。ELK之 kibana 报错master_not_discovered_exception] null or kibana-Request Timeout after 30000ms{“type”:“log”,"@timestamp":“2020-05-18T13:34:53Z”,“tags”:[“warning”,“savedobjects-service”],“pid”:4674,“message”:“Unable to connect to Elasticsearch. Error: Reques_unable to connect to elasticsearch. error: request timeout after 30000ms

随便推点

关于jquery的弹窗组件简单封装_jq中将关于浏览器窗口的属性都封装到了-程序员宅基地

文章浏览阅读5.6k次,点赞3次,收藏5次。前言:由于自己工作时多数是基于移动端的页面工程,很多时候都需要用到弹窗组件,网上也有很多好用,五花八门的弹窗插件,但是由于网上各个版本有些功能过于强大,导致插件大小比较大,有些样式不好自己进行各种自定义设计,有些则是达不到自己想要的那种需求,比如实现弹窗按钮的各种回调函数,于是自己就根据公司目前项目的需求 ,自己简单封装了一个弹窗组件。可简单自定义各式各样的样式 思路分析:声明一个带有对象参数的_jq中将关于浏览器窗口的属性都封装到了

基于tiny4412的Linux内核移植 -- DM9621NP网卡驱动移植(四)-程序员宅基地

文章浏览阅读633次。作者信息作者: 彭东林邮箱:[email protected]:405728433平台简介开发板:tiny4412ADK + S700 + 4GB Flash要移植的内核版本:Linux-4.4.0 (支持device tree)u-boot版本:友善之臂自带的 U-Boot 2010.12 (为支持uImage启动,做了少许改动)busyb..._memcpy(net_dev->dev_addr, dev_info.mac_addr, eth_alen);

springboot启动不打印日志信息_SpringBoot启动遇到的记录日志冲突问题-程序员宅基地

文章浏览阅读2k次。默认情况下,Spring Boot会用Logback来记录日志,并用INFO级别输出到控制台(如下图所示)。但是,有时候启动项目springboot默认打印日志与jar的打印日志会产生冲突(如下)SLF4J: Class path contains multiple SLF4J bindings.SLF4J: Found binding in [jar:file:/D:/mavencangku/o..._spring启动过程logback不打日志

python中表示空类型的是_python中表示空-程序员宅基地

文章浏览阅读1.7k次。广告关闭腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元!nonetype表示该值是一个空对象,空值是python里一个特殊的值,用none表示。 none不能理解为0,因为0是有意义的,而none是一个特殊的空值。 可以将none赋值给任何变量,也可以给none值变量赋值in: type()out: str知识点扩展:在python中,n..._python中表示空的是

Google Protocol Buffers 概述-程序员宅基地

文章浏览阅读513次。1. 概述Protocol Buffers 是一种轻便高效的结构化数据存储格式,可以用于结构化数据串行化,或者说序列化。它很适合做数据存储或 RPC 数据交换格式。可用于通讯协议、数据存储等领域的语言无关、平台无关、可扩展的序列化结构数据格式。目前提供了 C++、Java、Python 三种语言的 API。本文概述介绍Protocol Buffers,以及开始如何开始Protoco_google protocol buffers

删除异常值方法总结_python删除异常值-程序员宅基地

文章浏览阅读8.3k次,点赞3次,收藏49次。1.IQRpython基于IQR删除异常值:df = pd.read_excel('./7.xlsx')def fit_model(model, data, column='Area'): # fit the model and predict it df = data.copy() data_to_predict = data[column].to_numpy().reshape(-1, 1) predictions = model.fit_predict(dat_python删除异常值

推荐文章

热门文章

相关标签