CS中心的C ++课程,第一部分

计算机科学中心是POMI RAS, JetBrains和Yandex 数据分析学校计算机科学俱乐部的联合倡议。

该中心的存在使有才华的学生和毕业生能够在他们感兴趣的领域发展:计算机科学,数据科学或软件工程。

中心的C ++课程分为两个部分,由CS中心的老师Valery Mikhailovich Lesin和valery -l教授,ITMO和JetBrains共同负责“软件开发/软件工程”, Simlabs的技术总监。

本课程的第一部分是建立C ++基础所必需的:到本学期末,学生更有可能获得足够的这种语言的编程技能来解决他们的问题。 到目前为止,如果没有移动语义,sfinae,但是最有可能开始就足够了。

对于有使用C ++经验的学生,这部分内容将有助于缩小差距。 例如,在链接,使用内存,lambda函数和其他主题时。 讲座将介绍既定做法的回顾,并概述最新语言标准提供的可能性。 本课程的设计使不同层次的学生可以在其中找到自己的新材料。

有一个不错的看法!

1.组织C ++程序开发。

语言的历史和哲学。 适用范围:利弊。 库,编译,开发工具。 变量,条件,循环,功能,简单的输入和输出。


2.程序的布局。 广播单位。 声明和定义。 ODR。 全局和局部变量。


3.处理内存。 运行程序。

体系结构,流程和线程。 进程存储设备,页面存储器。 解引用,指针,数组。 指针,常量和常量指针的算术运算。 链接,常量链接的初始化,内存分配,内存泄漏。


4.内置类型,说明和运算符。

类型大小,显式类型转换,空类型,空终止的字符串,枚举枚举,typedef的同义词。 声明,范围和可见性,结构。 运算符,表达式,递增/递减,选择的语句(语句)。 循环,注释,运算符。


5.功能。

结构化编程。 声明函数,传递参数,传递数组,返回值。 过载,功能选择。 默认为参数。 任意数量的参数,指向函数的指针。 绑定和功能。


6.班级。

类类型,类定义,成员函数,访问控制,类函数定义,4个主要函数,交换技巧。 类字段。


7.命名空间。 覆盖运算符。

声明和使用名称空间,使用指令,使用声明,搜索Koenig。 重载运算符,可能和不可能的事,在何处以及如何编写运算符,运算符声明的示例,显式和隐式转换。 混合算术。 朋友功能。 前缀和后缀增量。 函子。 指针的运算符。 如何做功能?


8.动态多态性:简单的继承。

对象的实现。 组成。 传承 字段的位置。 继承的特征。 构造函数。 多态行为。 类型字段,虚拟函数,虚拟函数表,切片,纯虚拟函数,公共和私有继承。 析构函数。 调用虚函数。


9.动态多态性:多重和虚拟继承。

多重继承,歧义解析,隐藏函数,重复基类。 虚拟继承,基类重复,访问控制,受保护方法的使用,动态类型和引用强制转换,static_cast和dynamic_cast,typeid运算符,对象在内存中的位置。


10.模板简介。 类和函数模板。

模板类,模板功能,模板函数,实例化,模板参数,类型对等,类型推断,函数重载,算法选择,默认参数。


11.模板简介。 专业化。 与继承的关系。 智能指针。

类模板的专业化。 部分专业化。 通用非标底座。 显式实例化。 功能模板的专业化。 CRTP 模板typedef。 继承和模式。 通用类中的模板函数。 动态和静态多态。


12.智能指针。


13.错误处理策略。 侦错


另外要读什么


  • 穆 有效的C ++编程。
  • S. Meyers。 高效和现代的C ++:42条有关使用C ++ 11和C ++ 14的建议。

Source: https://habr.com/ru/post/zh-CN467781/


All Articles