课程分类

课程介绍
课程目录
用户评论
课程介绍
课程目录
用户评论

你将获得

  • 掌握某些知识点
  • 学会某些技巧(或思路)

教学服务

  • icon

    1v1专属答疑服务

  • icon

    BAT专家面试辅导

讲师介绍

  • 计算机专业硕士研究生,擅长C、C++和计算机安全,麦洛科菲教学总监,《程序员求职成功路:技术、求职技巧与软实力培养》作者,创立了麦洛科菲高端IT培训,培训了大量成功就职于BAT的学员

  • 课程详情

    周哥简介           
    周哥:男,真名周扬荣,毕业于中科院软件所。曾就职于阿里巴巴,奇虎360安全公司,SUN中国工程研究院,北大计算机研究所等,创办了“麦洛科菲”高端IT安全培训 。        
              
    课程内容介绍          
    我们把C++11及之后的标准叫做现代C++。C++11为C++98发布后13年来的第一次重大修正:包含约140个新特性,以及对C++03约600个缺陷修正。脱胎换骨,“看起来像一门新语言”,性能也得到了极大的提升。C++很难,学习成本很高,学习周期长,因此我们不推荐大家学习C++。本课将献给那些对C++有执着信念并想与时俱进的人。如果您现在使用C++却不会现代C++,那么就类似于在android和苹果智能机普及的时代,你还在使用Nokia。C++在后台开发,人工智能,机器学习,计算广告,信息安全等领域仍然有广泛的应用。学习本课需要C和C++基础。

    周哥教IT全网首发《现代C++精讲》视频课程(目前已知的唯一一个讲现代C++课程的视频),面试里常问的什么智能指针,右值引用,移动语义,深拷贝浅拷贝,STL模板库,类型推导等等都直接干趴下。在本课中,我们将结合实际的例子,详细介绍现代C++的重要特性,并力求浅显易懂。本课提纲如下:
    1,序言
        从一次失败的面试经历说起
        从C++98到现代C++
        课程适用对象
    2,泛型编程入门
        泛型编程之模板函数
        泛型编程之模板类
        typename与class的区别
    3,C++11重要内容提纲
    4,右值引用
        什么是左值(lvalue)和右值(rvalue)?
        什么是左值引用?
        什么是右值引用?
        通用引用(universal references)
        引用折叠规则
        完美转发, std::forward
    5,移动语义
        浅拷贝带来的问题
        传统拷贝构造函数
        移动构造函数
        std::move
        std::forward和std::move区别
        拷贝赋值函数与移动赋值函数
        noexcept
        vector与移动语义
    6,类型推导
        auto类型推断
        auto的作用
        auto注意事项
        decltype推导
        auto结合decltype返回值占位
        decltype与auto区别
    7,智能指针
        C++内存管理与垃圾回收
        智能指针概念
        实现一个简单的智能指针:SmartPtr
        早期智能指针的不足
        unique_ptr
        智能指针-shared_ptr:基本使用
        shared_ptr注意事项
        shared_ptr循环引用例子
        shared_ptr多线程安全问题
        weak_ptr
        weakptr应用场景(1)-缓存
        weakptr应用场景(2):避免循环引用和野指针
        weakptr应用场景(3):观察者列表
        树型结构用什么指针?
        weak_ptr解决循环引用问题
        weak_ptr解决多线程安全问题
        智能指针比较分析
        make_shared和new的区别
    8,C++11对类定义的改进
        新标准对类的改进主要内容
        =default,=delete
        使用delete而不是private来禁用函数
        委托构造函数(Delegating constructors)
        constexpr构造函数(1):理解constexpr
        constexpr构造函数(2)
        POD( Plain Old Data )-plain
        POD( Plain Old Data )-old
        POD-Plain Old Data
        explicit构造函数
        final关键字
        override关键字
        继承构造函数
    9,STL容器改进
        STL容器提纲
        forward_list
        std::array
        cbegin,cend
        swap
        提高容器插入效率:emplace/emplace_back
        shrink_to_fit
        unordered_map概述
        unordered_map存放内建型别数据
        unordered_map存放自定义数据
        unordered_map rehash
        unordered_map与map比较
        vector列表初始化
    10,Lambda闭包
    11,std::function类模板
        可调用实体&仿函数
        std::function类模版
        std::bind(1)
        std::bind(2)-绑定仿函数
        std::bind(3)-类函数和成员
    12,空指针:nullptr
    13,列表初始化(1)
    14,列表初始化(2)-阻止类型收窄
    15,for语句的新写法
    16,枚举类或强类型枚举
    17,类型别名声明:using与typedef
    18,多线程支持
    19,C++14标准提纲
    20,Lambda参数支持auto
    21,C++14constexpr函数
    22,C++14类型推导:decltype(auto)
    23,二进制常量
    24,C++17标准(1)
    25,C++17标准(2)
    26,C++20展望
    27,C++就业-企业需求与求职建议


    学员评价          
                       

    勘误提示   
    如您在学习过程中发现任何“错误”,请通过email:10950150@qq.com告知我们错误所在的课程名称和错误所在视频的时间起始位置。错误一经我们确认,我们将会在该门课程的“课程概述”里提供“错误更正”信息,并对您表示衷心的感谢。
    温馨提示
    • 请勿私下交易
      请勿在平台外交易。与机构和老师私下交易造成的任何损失及纠纷,腾讯课堂不承担任何责任
    • 听课说明

      1、电脑:访问腾讯课堂官网 ke.qq.com 查看我的课表或下载win/mac客户端听课

      2、手机/平板:下载腾讯课堂APP, 进入学习页面听课