`
kmplayer
  • 浏览: 509228 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

一道关于C++继承类的面试题

阅读更多
集中写几个关于类继承语法的典型题目
1,
#include <iostream>
using namespace std;

class Base
{
    int i;
public:
    static int s;
    Base():i(0)
    {
        cout<<"Base:Construct"<<endl;
        s++;
    }
    static void sFun()
    {
        cout<<s<<endl;;
    }
    void f(float f)
    {
        cout<<"Base:f()"<<endl;
    }
    void g(float f)
    {
        cout<<"Base:g(float)"<<endl;
    }
};
int Base::s=0;

class Derived: public Base
{
    int j;
public:
    //基类构造函数先执行.
    Derived():j(0)
    {
        cout<<"Derived:Construct"<<endl;
        s++;
    }
    void f(float f)
    {
        cout<<"Derived:f()"<<endl;
    }
    void g(int f)
    {
        cout<<"Derived:g(int)"<<endl;
    }
};


int main()
{

    Base *pB;
    Base *pD;
    Derived d;
    pD=&d;
    pD->sFun();
    Base b;
    pB=&b;
    pB->sFun();

    //全是执行Base
    pB->f(3.14f);
    pD->f(3.14f);

    b.g(3.14f);
    d.g(3.14f);
    return 0;
}


2,
#include <iostream>
using namespace std;

class B
{
public:
    B()
    {
        cout<<"default constructor"<<endl;
    }
    ~B()
    {
        cout<<"destructed"<<endl;
    }
    B(int i):data(i)    //B(int) works as a converter ( int -> instance of  B)
    {
        cout<<"constructed by parameter " << data <<endl;
    }
private:
    int data;
};

B Play( B b)
{
    return b ;
}


int main()
{
    //case1:
    //析构三次:
    //默认,参数构造,返回复制
    B t1;
    t1 = Play(5);
    //case2:
    //析构两次:
    //参数构造,返回复制
    B t2= Play(5);
    return 0;
}
分享到:
评论

相关推荐

    高质量c++(内含面试题)

    #### 十、类的继承与组合 - **继承**:了解继承的基本概念,如何实现和维护继承关系。 - **组合**:通过组合其他类的对象来扩展功能,而不是通过继承。 #### 十一、其它编程经验 - **使用const提高健壮性**:通过...

    北京四维公司上机面试题(全英文)

    【标题】:“北京四维公司上机面试题(全英文)”揭示了这是一场针对C++编程语言的面试考核,特别强调了全英文环境,意味着应聘者不仅需要精通C++,还需要具备良好的英语阅读和理解能力。北京四维公司可能是一家注重...

    一道腾讯面试题

    这道2011年腾讯校招的面试题虽然没有明确的问题描述,但从标签中我们可以推测,它可能涉及C++、.NET、Java这三种编程语言中的某一方面,或者是关于算法设计与分析。面试题通常旨在考察候选人的思维能力、编程基础...

    C / C++ 语言笔试题 200页 doc 文档

    10. **C++特有内容**:类与对象、继承、多态、模板、异常处理等面向对象编程的概念和实践。 文档中的每一道题目都是精心设计的,它们不仅仅是技术检验,更是思维方式和解决问题能力的锻炼。在解答过程中,你不仅...

    C++面试题解析:构造函数到模板全面解读

    内容概要:本文档提供了一系列针对C++开发者常见的面试题目及其解答,涵盖了构造函数与析构函数的概念、深拷贝与浅拷贝的区别、虚函数的作用、RAII编程准则的应用、实现多重继承的方法及可能引发的问题,还有智能...

    C与C++面试题,很多公司的

    这些题目涵盖了C与C++编程语言的多个核心概念,包括头文件的包含方式、内存管理、函数调用、数据类型...以上就是C与C++面试题的相关知识点解析,涵盖了许多编程基础及高级概念,有助于提升面试者的技术理解和应用能力。

    从一道面试题谈linux下fork的运行机制

    从一道面试题深入探讨Linux下fork的运行机制 在Linux操作系统中,`fork()`系统调用是进程管理的核心功能之一,它允许一个已存在的进程创建一个新的进程,即子进程。子进程几乎完全复制父进程的状态,包括内存映像、...

    C++面试常考知识点

    C++面试常考知识点 ...C++语言中有很多其他的知识点,例如C风格字符串、C++数据类型大小、类的继承、抽象类、虚函数、封装特性、继承特性、组合特性和动态特性等。 掌握这些知识点对面试的成功至关重要。

    c++面试题目总结c++面试题目

    5. **C++设计:不可继承的类** - C++中没有final关键字,但可以通过使构造函数和析构函数为私有来防止继承。示例代码给出了两种实现方式:一种是使用静态方法获取实例,另一种是利用模板和类型擦除技术,使类的行为...

    C++笔试题集锦

    《C++笔试题集锦》是一本专门为C++编程爱好者和求职者准备的资源,它汇集了46家公司的C++笔试题目,旨在帮助读者深入理解和掌握C++语言的核心概念、语法特性以及实际应用技巧。这份资料对于提升C++编程能力,特别是...

    c++ 300题经典

    这份资料的核心是300道精心挑选的题目,每一道题都代表着一个或多个关键的C++知识点,通过解答这些题目,学习者可以深入理解C++的基础概念,提高编程能力。 在C++的学习中,以下是一些核心的知识点: 1. **基础...

    经典 c++ 程序员笔试题

    《经典C++程序员笔试题》是一份集合了各种难度层次的C++编程题目,旨在全面检验程序员的基础知识、编程技巧以及问题解决能力。这份资料涵盖了从基础语法到高级特性的各个方面,是提升C++技术水平的理想参考资料。 ...

    C++校招试题和答案.rar

    首先,试题主要围绕C++的基础知识展开,这部分内容包括但不限于变量、数据类型、运算符、流程控制语句(如if-else、switch-case、for、while)、函数的定义与调用、类与对象的概念、封装、继承和多态等。这些都是C++...

    baidu.rar_C 笔试 答案_C++笔试编程题_c 笔试题_百度笔试_笔试题

    而C++则是在C的基础上增加了面向对象特性,支持类、继承、多态等高级概念,常用于开发大型软件系统。了解这两者的区别和联系,是解答这类笔试题的关键。 在C语言部分,常见的笔试题型可能包括指针操作、内存管理、...

    C++笔试题(word 文档)

    2. 文件逆序存储:这是一道关于文件操作的问题,可以通过读取原文件的每个字符并按逆序写入新文件来实现。具体实现可能涉及文件流的使用,如`ifstream`和`ofstream`,以及循环和缓冲区的管理。 3. `main`函数后的...

    最新爱立信c++笔试题目

    本题是爱立信公司在招聘过程中用于笔试的一道C++编程题。题目旨在考察应聘者对C++基本概念的理解,尤其是指针、对象生命周期管理以及多态性的掌握情况。 #### 题目代码 ```cpp #include using namespace std; ...

    华为云计算面试

    华为面试题中有一道字符串处理的题目,要求候选人在20分钟内编写代码,找到字符串中第一个字符在本字符串中最后出现的位置。 6.2 性格测评 华为面试还包括性格测评,旨在评估候选人的性格特征和职业能力。 华为...

    华为面试题

    ### 华为面试题解析 #### Q1:OSI与TCP/IP模型的区别 - **OSI(开放式系统互联)模型**:由国际标准化组织(ISO)制定,它将网络通信的功能划分为7个层次,分别为物理层、数据链路层、网络层、传输层、会话层、...

    Qt绘图程序源码

    一道C++面试题的实现(框架:QT) 题目:  1.画三角形,四边形,圆形,在窗口中移动,碰到窗口边缘会自动弹回  2.通过菜单,可以增加三角形,四边形,圆形  3.对选中的图形,可以设置填充颜色,线条宽度  4...

Global site tag (gtag.js) - Google Analytics