1. 下面代码输出什么?为什么?(初始化列表)

#include<iostream>

using namespace std;

class Test
{
int m_i;
int m_j;
public:
Test(int v): m_j(v), m_i(m_j)
{ }
int getI()
{
return m_i;
}
int getJ()
{
return m_j;
}
}; int main()
{
Test t1();
Test t2(); cout << t1.getI() << " " << t1.getJ() << endl;
cout << t2.getI() << " " << t2.getJ() << endl; return ;
}

① 答案:

随机数 1

随机数 2

② 核心提示:

(1)成员变量的初始化顺序与声明顺序有关,与初始化列别顺序无关

2. 下面程序输出什么?为什么?(多态)

#include <iostream>

using namespace std;

class Base
{
public:
virtual void func()
{
cout << "Base::func" << endl;
}
}; class Child : public Base
{
public:
void func()
{
cout << "Child::func" << endl;
}
}; int main()
{
Base* pb = new Base();
pb->func(); Child* pc = (Child*)pb;
pc->func(); delete pc; pb = new Child();
pb->func(); pc = (Child*)pb;
pc->func(); return ;
}

① 答案:

Base::func
Base::func
Child::func
Child::func

② 核心提示:

(1)多态:根据实际的对象类型决定函数调用语句的具体调用目标。

C++经典面试题汇总的更多相关文章

  1. Python 经典面试题汇总之数据库篇

    数据库和缓存 1.列举常见的关系型数据库和非关系型都有那些? 关系型数据库(需要有表结构) mysql.oracle.splserver.postgresql.db2.sybase 非关系型数据库(是 ...

  2. Python 经典面试题汇总之基础篇

    基础篇 1:为什么学习Python 公司建议使用Python,然后自己通过百度和向有学过Python的同学了解了Python.Python这门语言,入门比较简单,它简单易学,生态圈比较强大,涉及的地方 ...

  3. C/C++ 经典面试题汇总

    面试题1:变量的声明和定义有什么区别 ? 为变量分配地址和存储空间的称为定义,不分配地址的称为声明.一个变量可以在多个地方声明,但是只在一个地方定义.加入extern修饰的是变量的声明,说明此变量将在 ...

  4. Python 经典面试题汇总之框架篇

    前端和框架 1.谈谈你对http协议的认识 浏览器本质,socket客户端遵循Http协议 HTTP协议本质:通过\r\n分割的规范,请求响应之后断开链接 ==> 短连接.无状态 具体: Htt ...

  5. Python 经典面试题汇总之网络篇

    网络篇 1.简述 OSI 七层协议 物理层:定义物理设备标准,如网线的接口类型.光纤的接口类型.各种传输介质. 数据链路层:定义如何传输格式化数据,以及如何访问物理介质. 网络层:定义逻辑网络地址. ...

  6. 最强阿里巴巴历年经典面试题汇总:C++研发岗

    (1).B树.存储模型 (2).字典树构造及其优化与应用 (3).持久化数据结构,序列化与反序列化时机(4).在无序数组中找最大的K个数? (4).大规模文本文件,全是单词,求前10词频的单词 (5) ...

  7. BAT面试笔试33题:JavaList、Java Map等经典面试题!答案汇总!

    JavaList面试题汇总 1.List集合:ArrayList.LinkedList.Vector等. 2.Vector是List接口下线程安全的集合. 3.List是有序的. 4.ArrayLis ...

  8. 收藏所用C#技术类面试、笔试题汇总

    技术类面试.笔试题汇总 注:标明*的问题属于选择性掌握的内容,能掌握更好,没掌握也没关系. 下面的参考解答只是帮助大家理解,不用背,面试题.笔试题千变万化,不要梦想着把题覆盖了,下面的题是供大家查漏补 ...

  9. 【强烈推荐】《剑指Offer:名企面试官精讲典型编程题》一书中IT名企经典面试题

    各位程序猿:         <剑指Offer>一书源自该书作者何海涛坚持更新与编写的博客(http://zhedahht.blog.163.com/),该博客收集整理了大量如微软.Goo ...

随机推荐

  1. javascript总结50:认识instanceof 与 原型链

    1 instanceof: 1.1 普通使用下: 判断一个对象是否是某个构造函数的实例: 语法 : 对象 instanceof 函数 是则返回true,不是则返回false. console.log( ...

  2. java IO之File基本操作

    public static void main(String[] args) { // TODO Auto-generated method stub //"G:\\JAVA\\test\\ ...

  3. 编写高质量代码改善C#程序的157个建议——建议105:使用私有构造函数强化单例

    建议105:使用私有构造函数强化单例 单例指一个类型只生成一个实例对象.单例的一个简单实现如下所示: static void Main(string[] args) { Singleton.Insta ...

  4. centos 学习总结

    我用的是6.4 添加中文输入法 .su root .yum install "@Chinese Support" .exit .回到桌面,system->preference ...

  5. 基于FPGA的XPT2046触摸控制器设计

    基于FPGA的XPT2046触摸控制器设计 小梅哥编写,未经许可,文章内容和所涉及代码不得用于其他商业销售的板卡 本实例所涉及代码均可通过向 xiaomeige_fpga@foxmail.com  发 ...

  6. php中this、self、parent解析

    概述: this:指向类当前对象的指针:self:指向类本身,一般指向类中的静态变量:parent:指向父类的指针,一般使用parent来调用父类的构造函数. 下面通过程序详细介绍: 1.this & ...

  7. linux 系统启动

    系统启动流程 BIOS 我们称之为基本输入输出系统,一般保存在主板上的BIOS芯片中,负责检查硬件并且查找可启动设备:可设置启动顺序: 如果一个设备是可启动,那么第一个扇区512字节的最后两字节是55 ...

  8. PyCharm社区版+Django搭建web开发环境-1

    PyCharm开源社区版不像商业版那样可以直接通过Django来创建项目,必须通过以下几个步骤进行: 1. 创建项目:在cmd命令行下输入:django-admin startproject Demo ...

  9. 我眼中的SAML (Security Assertion Markup Language)

    提到SAML (Security Assertion Markup Language), 很多人都会联想到单点登录SSO.那么Saml到底是什么,它跟sso到底有什么联系?这里给大家分享一下我在读完了 ...

  10. C# javascript 采用 RSA 加密解密

    C# javascript 采用 RSA 加密解密 1.C#提供公钥 2.javascript用公钥加密 3.C#用私钥解密 4.javascript 类库 https://www.pidder.de ...