Boolan_C++_OOP

2017-07-14  本文已影响18人  FlyTheKite

为什么 学习 C++?

他的效率 比其他 面向对象 语言,
更快。

作用域,Scope 大括号

以 良好的方式, 编写 C++ class


学习 C++,

C++ 98
(1.0 ) 1998

C++ 11
( 2.0 ) 2011

STL, Standard Template Library.

C语言,
数据定义在 结构体中。类型。

数据变量, 都是 全局的。
各个函数 , 都可以 去处理数据。

C ++,
Class / Struct,
Data Members,
Member Functions.
把 数据 和 函数 包在一起。

Guard 防卫式声明
# ifndef
# define
# endif

{
条件 编译.
防止 在 一个 .cpp 里面,
include 同一个 .h 文件 多次。
而出现, 那个 .h 的声明 , 被重复出现。
}

Class Template 模版
template < typename T > 函数模板

构造函数 ctor 放在 private 区。
public 区, 放一个 单例。

不会改变的内容前面,
( get 方法 ),
实现前面,加 const.


参数传递

我们是 同一个东西,
函数一改, 就影响了 我。
解决:
pass by reference to const

C 可以传 指针。
我要传 这一包东西,
这包东西太大了,
我就把 这一包东西的 地址 , 传出去。

返回值 传递

用 reference 的 好处,
传递者 无需知道 , 接受者 是以 reference 形式接收。

用 point 来 pass value,
传的人 必须知道 现在传的是 什么东西, 要有一个 特殊符号。

操作符 重载, Operator Overloading


this, 调用者

所有的 成员函数, 一定带着一个 隐藏的 参数。
那个参数, 我没有写, 但是他在。
谁调用这个函数, 那个谁, 就是 this.

this , 是一个 指针。

编译器 ,把 operator 符号 ,
作用在 左边。

*ths, 是 指针所指的东西,
一个 object/ value.

看 function name ,
就知道
这是 成员函数, 还是 全局函数。

typename ( 临时对象)
等同于 int (sth )

临时对象, 他临时才要的。
他的生命 到下一行 ,就结束了。

negate 取反, 反向

+

正号, 还是 加法 ?
编译器 通过 参数, 识别。

上一篇 下一篇

猜你喜欢

热点阅读