【cpp面向对象编程学习笔记】Class经典分类(1)without pointer member(s)
来源:互联网 发布:顶级定制晚礼服 知乎 编辑:程序博客网 时间:2024/05/16 07:43
cpp面向对象编程@geekband
1. 基于对象(Object Based)vs面向对象(Object Oriented)
前者面对的是单一类的设计,后者是多重类的设计,并且是classes 与 classes之间的关系
2. cpp中分类及代码基本形式
-在cpp内有关类的设计有两个经典的分类:Class without pointer(s)、Class with pointer(s) 后者需要涉及到内存管理。
-cpp代码主要文件有三种:.h(header files)[Class Declaration]—–.cpp(ex.main)—–.h(header files)[Standard Library]
其中在编写Header中注意要有防卫式声明,格式及布局如下
//example.h#ifndef _EXAMPLE_#define _EXAMPLE_//forward declarations(前置声明)//......//....//..//class declarations(类-声明)//......//....//..//class definition(类的定义)//......//....//..#endif
3. 类的声明与定义
-访问级别: public 给外界调用的接口 private data部分,若没有声明访问级别,则class 默认为private -构造函数: -1.每个类中都有若干个构造函数,其作用对类内的成员函数及数据成员进行初始化,并且构造函数可以有多个,用于满足不同client的需求。 -2.与其他的成员函数不同,首先构造函数的名称必须与函数名相同,其次构造函数没有返回值。 -3.使用初始值列表(Initialization List)方式对构造函数默认实参设置,更能表示该值为初始化, 在构造函数体内对数据成员进行缺省值设置,虽然但此时表示为对数据成员进行赋值操作,并不是初始化,另外还可能会引起未定义行为 e.g 数据成员为const类型时,在函数体内进行赋值是未定义行为,理由是不能对一个const对象赋值。 -4.成员函数的实参传递方式-值传递(pass by value)、引用传递(pass by reference)。 尽量使用引用传递实参,并且在不需要对实参修改时尽量设为const,使其能够接受一个常量对象。 -5.函数的值返回(return by value)、引用返回(return by reference) -6.友元,在类内中函数若添加friend 关键字,表示可以对象内的数据进行访问。 相同class 的各个objects互为友元
0 0
- 【cpp面向对象编程学习笔记】Class经典分类(1)without pointer member(s)
- 【cpp面向对象编程学习笔记】Class经典分类(2)with pointer member(s)
- C++面向对象高级开发No.1 - Class Without Pointer
- 【cpp面向对象编程学习笔记】(二)
- 【cpp面向对象编程学习笔记】对象模型
- 《C#入门经典》学习笔记(面向对象编程)
- C++ 学习2 Class with Pointer member
- C++基于对象--Class without pointer
- C++类设计1(Class without pointer members)
- 面向对象编程小结(学习笔记)
- 面向对象的编程(学习笔记1)
- 学习笔记之JavaSE(10)--面向对象编程1
- Cpp面向对象概念-笔记
- Thinkcpp学习笔记 c11 成员指针 Pointer to member
- 学习笔记之面向对象编程25(网络编程)
- php面向对象编程笔记(1)
- experiment : use class member function pointer
- C++面向对象高级开发No.2 - Class With Pointer
- 利用连续点灯定位汇编代码的错误
- Yii2之yii2-apidoc安装爆Your requirements could not be resolved to an installable set of packages.的解决方案
- Android下logcat用法详解
- Android官方数据绑定框架DataBinding
- 反向传播算法的推导
- 【cpp面向对象编程学习笔记】Class经典分类(1)without pointer member(s)
- java核心API
- JavaScript实现点击(按钮)实现添加css样式
- Volley 的 小实例
- 文档说明
- Length of Last Word
- 设计模式学习笔记--设计模式概述
- POJ 1151 Atlantis
- u3d fbx动画模型生成Animator Controller和Prefab工具脚本