[GeekBand]第一周学习笔记

首先来张图片:

[GeekBand]第一周学习笔记_第1张图片

本周主要内容涉及:

-- 初识c++

-- 头文件与类的声明

-- 构造函数

-- 参数传递与返回值

-- 操作符重载与临时对象

基础部分:

课程目标:

培养正规、大气的编程习惯。

学习classes之间的关系(继承、复合、委托)。

class without pointer members(例如Complex)||class with pointer members(例如String).


c++不同于c,它是面向对象(object)的编程语言(oop)。

object based基于对象       面对的是单一class的设计

object oriented面向对象   面对的是多重classes的设计,classes和classes之间的关系。


*在c++中使用c:    #include//不用加.h


开始编程:

头文件:

要加防卫式声明guard:

#ifndef _COMPLEX_

#define _COMPLEX_

.....

#endif

头文件布局:


[GeekBand]第一周学习笔记_第2张图片

模板template:

若class想只换数据类型就可以使用模板


内联函数inline:

函数若在class body内定义完成,便自动成为inline候选人


若有double real() const(return re;),打印出的是c1.real(),不是c1.re。


构造函数constructor:

注意,public内:

形式:complex(double r=0,double i=0)

           :re(r),im(i);

           {}


构造函数可以有很多个——重载overloading:

注意this指针的使用。


注意public中的const要加。


4点关键:

数据一定放在private里

参数尽可能以reference传(const看状况)

返回值也尽量以reference传

在类的本体内应该加const就加


构造函数那一行(关乎数据的初始化)

相同class的objects互为friends


你可能感兴趣的:([GeekBand]第一周学习笔记)