zoukankan      html  css  js  c++  java
  • 面经2

    作者:ymlo
    链接:https://www.nowcoder.com/discuss/244052?type=post&order=time&pos=&page=1
    来源:牛客网

    一面面试官很友好的给我过了,下午到了泰富酒店,面试地点在三层。
    我看一面写的代码都在二面面试官手上,对方人很好。
    1、自我介绍,很简略的带过
    2、讲一下实习的工作
    3、介绍C++新特性,对智能指针的理解
    4、C++的三大特性,对它们怎么理解的

    1.封装
    突破了C语言函数的概念,封装可以隐藏实现细节,使得代码模块化。

    2.继承
    继承可以扩展已存在的代码模块(类);达到代码重用的目的。要实现继承,可以通过“继承”(Inheritance)和“组合”(Composition)来实现。

    3.多态
    接口重用,多态可以使用未来,即当前的框架不需改变也可以使用后来的代码。
    ————————————————
    版权声明:本文为CSDN博主「michael019」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/michael019/article/details/48844945
    5、多态的原理
    C++的多态性用一句话概括就是:在基类的函数前加上virtual关键字,在派生类中重写该函数,运行时将会根据对象的实际类型来调用相应的函数。如果对象类型是派生类,就调用派生类的函数;如果对象类型是基类,就调用基类的函数

    用virtual关键字申明的函数叫做虚函数,虚函数肯定是类的成员函数。

    存在虚函数的类都有一个一维的虚函数表叫做虚表,类的对象有一个指向虚表开始的虚指针。虚表是和类对应的,虚表指针是和对象对应的。

    6、常用设计模式,写一个单例模式

    class singleton
    {
    private:
    singleton(){};
    static Singleton* instance;
    public:
    static singleton* getInstance()
    {
    return instance;
    }
    }
    singleton* singleton:: instance = new singleton();

    7、程序:有序链表合并、硬币组合方案(dp)最少硬币: Min[i] = min(Min[i], Min[i - type[j]] + 1)
    硬币组合数: dp[k][j] += dp[k-type[i]][j-1]
    /*
    struct ListNode {
    int val;
    struct ListNode next;
    ListNode(int x) :
    val(x), next(NULL) {
    }
    };
    /
    class Solution {
    public:
    ListNode* Merge(ListNode* list1, ListNode* list2)
    {
    if(list1 == nullptr){
    return list2;
    }

          if(list2 == nullptr){
            return list1;
        }
        
        if(list1->val <= list2->val){
            list1->next = Merge(list1->next, list2);
                return list1;
        }
        else{
            list2->next = Merge(list1,list2->next);
                return list2;
        }
        
    }
    

    };
    8、linux查找含有“xxxx”的文件名//grep -rn abc.txt
    9、git 查询提交记录 rebase//git log
    10、反问环节。

    无欲则刚 关心则乱
  • 相关阅读:
    py-day1-2 python的循环语句
    B/S和C/S结构的区别
    php get_magic_quotes_gpc() addslashes()
    SqlHelper数据库访问类
    随滚动条滚动的居中div
    有关Repeater的事件
    Repeater的ItemCommand事件和ItemCreated事件,高手请跳过~
    温故而知新之数据库的分离和附加…高手请跳过….
    自己做的一个小功能~
    php什么是变量的数据类型
  • 原文地址:https://www.cnblogs.com/xjyxp/p/11484727.html
Copyright © 2011-2022 走看看