c++面经积累<1>
- 引用和指针
- 指针是一个实体,需要分配内存空间,而引用只是一个别名,不需要分配内存空间
- 指针可以有多级,而引用只能有一级。
- 指针和引用的自增运算不一样,指针是指向下一个空间,而引用是引用的变量值增加
- sizeof引用得到引用所指对象的大小,而sizeof指针得到指针的大小。
- static的用法和介绍
- 隐藏:未加static修饰的全局变量和函数具有全局可见性。
- 保持变量内容的持久。
- 默认初始化为0
- 在类中使用static
- 函数体内的static变量作用范围为该函数体。
- 类中的static变量修饰的成员函数属于整个类,这个函数不包括this指针,因为只能访问类的static成员变量
- static成员函数不能被virtual修饰,static成员不属于任何对象或实例。
- 构造函数和析构函数类相关
- 构造函数为什么不能为虚函数?析构函数为什么要为虚函数?
- 虚函数相当于一个指向虚函数表的指针,这个指针存在于对象的内存空间中,如果构造函数是虚函数,那么在对象初始化之前就应该存在。但是此时对象还未初始化,因为构造函数不能是虚函数
- 当派生类对象申请了内存空间,并在析构函数中对这些内存进行释放,如果析构函数采用非析构,那么删除基类指针指向的派生类的对象的时候,就不会发生动态绑定,因为只会调用基类的析构函数,而不会调用派生类的析构函数。
- 构造函数和析构函数中可以调用虚函数吗?
- 不提倡在构造函数和析构函数中调用虚函数
- 构造函数和析构函数中调用虚函数都不使用动态绑定。如果在其中调用虚函数,那么运行的是为构造函数和析构函数自身定义的版本。
- 父类对象在子类对象之前进行构造,此时子类部分的数据成员还未进行初始化。因此调用子类的虚函数是不安全的。
- 析构函数用来销毁一个对象,在销毁一个对象的时候,先调用子类的析构函数,然后调用基类的析构函数,故在调用基类的析构函数的时候,派生类的数据成员已经被销毁,在调用子类的虚函数没有任何意义。
- 构造函数析构函数是否可以抛出异常
- c++只会析构已经完成的对象,在构造函数中抛出异常,控制权转出构造函数之外,因而在对象b的构造函数中发生异常,对象b的析构函数不会被调用,因此发生泄漏
- 如果从析构函数抛出异常,而且没有在当地进行捕捉,那么析构函数执行不完全。
c++面经积累<1>的更多相关文章
- 《Effective Java》学习笔记——积累和激励
从一个实际案例说起 国庆长假前一个礼拜,老大给我分配了这么一个bug,就是打印出来的报表数量为整数的,有的带小数位,有的不带,毫无规律. 根据短短的两个多月的工作经验以及猜测,最终把范围缩小到以下这段 ...
- 【知识积累】try-catch-finally+return总结
一.前言 对于找Java相关工作的读者而言,在笔试中肯定免不了遇到try-catch-finally + return的题型,需要面试这清楚返回值,这也是这篇博文产生的由来.本文将从字节码层面来解释为 ...
- 项目积累(三)CSS
公司不是专门做网站的,偶尔会接到客户让修改前端,有时候和让头疼,自己浏览器兼容问题处理不好. 慢慢积累吧. 先贴出来一些前端代码吧,如下: <div class="test" ...
- 【知识积累】SBT+Scala+MySQL的Demo
一.背景 由于项目需要,需要在Sbt+Scala项目中连接MySQL数据库.由于之前使用Maven+Java进行依赖管理偏多,在Sbt+Scala方面也在不断进行摸索,特此记录,作为小模块知识的积累. ...
- 积累一下SQL
开篇先自我检讨一下,写了博客几年以来首次试过连续两个月没出过博文,有客观也有主观原因,但是最近这年里博文数量也越来越少,博文的质量也每况日下.希望自己一直能坚持下来,多写写博文,这月尽量多写几篇来弥补 ...
- Oracle----SQL语句积累 (Oracle 导入 dmp文件)
Oracle----SQL语句积累 (Oracle 导入 dmp文件) Oracle SQL PL 导入dum文件 1.数据库DBA权限: 注意:这个是在cmd命令行中直接输入,不需要进入Oracl ...
- 记一些之前忘记积累的问题(fiddler 学习、XP系统不能上网、XP不能装fiddler、注册表快速找到)
记一些之前忘记积累的问题: fiddler学习:http://www.cnblogs.com/kingwolf_JavaScript/archive/2012/11/07/FiddlerUI.html ...
- python积累
python积累 一.逐渐积累 python逐渐积累 http://www.cnblogs.com/lx63blog/articles/6051526.html python积累_2 http://w ...
- 分享工作中遇到的问题积累经验 事务日志太大导致insert不进数据
分享工作中遇到的问题积累经验 事务日志太大导致insert不进数据 今天开发找我,说数据库insert不进数据,叫我看一下 他发了一个截图给我 然后我登录上服务器,发现了可疑的地方,而且这个数据库之前 ...
- 【知识积累】BufferedImage类实现图片的切分
一.引言 如何实现图片分割?若有园友用到这个模块,使用Java的BufferedImage类来实现,图片切分也可以作为一个小工具积累起来,以备不时之需. 二.代码清单 package com.lees ...
随机推荐
- [HTML/CSS]三角形
CSS盒子模型 当我们把padding和width,height全部设置为0,border设为一个较大的像素时 即:我们需要什么方向的三角形,只需把其余的三角形背景色设置为transparent:
- 2018-06-21 中文代码示例视频演示Python入门教程第五章 数据结构
知乎原链 续前作: 中文代码示例视频演示Python入门教程第四章 控制流 对应在线文档: 5. Data Structures 这一章起初还是采取了尽量与原例程相近的汉化方式, 但有些语义较偏(如T ...
- bootstrap日期控件(双日期、清空等问题解决)
bootstrap以它优美的外观和丰富的组件,使它成为目前最流行的前端框架.在项目开发中,我们使用它的日期控件确实遇到了一些问题: 1.日期控件后面两个图标点击触发失效 2.双日期关联问题 3.双日期 ...
- [C语言]易错知识点、小知识点复习(1)
1. 计算机只能识别由0和1组成的二进制指令,需要将用高级语言(如C.C++)编写的源程序(.c..cpp)编译成二进制目标文件(.obj).一个程序可以根据需要写在不同的文件里,编译是以文件为单位进 ...
- GIS开发之计算四参数,七参数
一.四参数 想要通过控制点计算四参数,首先需要知道四参数的相关原理,推荐这篇文章: http://www.docin.com/p-1197326043.html 根据上面的计算公式,使用最小二乘法计算 ...
- 30.Odoo产品分析 (四) – 工具板块(2) – 搜索和仪表盘(2)
查看Odoo产品分析系列--目录 在前面的模块中,简单介绍过了odoo如何搜索系统中的各种数据集,并保存这些过滤器,以便在之后需要时能够轻松访问这些过滤器.这里将做更详细的介绍.最后分析仪表盘的功能, ...
- 配置多个相同网段的ECMP下一跳,配合NQA健康检查实现高可靠性
1.一般情况下,ECMP常用的常见是,针对很远的目的地址,下一跳分别是路由器的不同出端口,而路由器的不同端口是不同网段的,也就是说,下一跳是不同的网段地址. 但是,在连接到终端服务器时,常常会采用多个 ...
- [随时更新][Android]小问题记录
此文随时更新,旨在记录平时遇到的不值得单独写博客记录的细节问题,当然如果问题有拓展将会另外写博客. 原文地址请保留http://www.cnblogs.com/rossoneri/p/4040314. ...
- [译]在Linux上的提高MySQL/MariaDB安全性的12条建议
MySQL 是世界上最流行的开源数据库系统,而MariaDB(MySQL的一个分支)是世界上发展最快的开源数据库系统.安装MySQL服务器之后,它的默认配置是不安全的,保护它是一般数据库管理中的基本任 ...
- MS SQL作业Schedule的限制注意事项
最近遇到了一个关于MS SQL作业Schedule下有限制的特殊案例,有一个作业,用户要求执行的时间为:9:30,14:30,16:30, 19:00,于是我设置了两个Schedule,其中一个每 ...