一些c++
1.static 静态局部对象:
一旦被创建,在程序结束前都不会被撤销。当定义静态局部对象的函数结束时,静态局部对象不会撤销。
2.内联函数:
避免函数调用的开销。
在函数返回类型前加上关键字 inline 就可以将一些特定函数指定为内联函数。
3.友元:
friend 机制允许一个类将对其非公有成员的访问权授予指定的函数或类。
4.static类成员:
static数据成员独立于该类的任意对象而存在。每个static数据成员是与类关联的对象,并不是与该类的对象相关联。
static成员函数没有this形参,它可以直接访问所属类的static成员,但不能直接使用非static成员。
三个优点:
(1)static成员名字在类的作用域中,可以避免与其他全局等对象名字冲突。
(2)可以实施封装。static可以是私有成员。
(3)程序更清晰,static成员是与特定类关联的。
备注:static成员函数不能声明为const。static成员函数也不能被声明为虚函数。
5.动态绑定:
通过基类的引用或者指针调用虚函数时,根据其指向的基类对象或者派生类对象来动态决定虚函数的运行。
触发动态绑定满足两个条件:
(1)只有指定为虚函数的成员函数才能进行动态绑定。
(2)必须通过基类类型的引用或者指针进行函数调用。
6.纯虚函数:
将函数定义为纯虚函数能够说明,该函数为后代类型提供了可以覆盖的接口,但是这个类中的版本绝不会调用。
7.智能指针:
引用计数,析构时监查引用计数,为0时才释放。
8.多态:
一个接口,多种状态。
是通过虚函数来实现的。
9.单例模式:
其意图是保证一个类仅有一个实例,并提供一个访问它的全局访问点,该实例被所有程序模块共享。
随机推荐
- List排序共通代码
此共通方法可以根据特定字段进行排序 package com.gomecar.index.common.utils; import java.lang.reflect.Method; import ja ...
- 四则运算生成与校检 Python实现
GitHub地址 https://github.com/little-petrol/Arithmetic.git 合作者: 郭旭 和 卢明凯 设计实现过程 代码的组织主要分为两个部分: 算法与结构体的 ...
- Android中SQLite介绍
现在的主流移动设备像Android.iPhone等都使用SQLite作为复杂数据的存储引擎,在我们为移动设备开发应用程序时,也许就要使用到SQLite来存储我们大量的数据,所以我们就需要掌握移动设备上 ...
- R语言:数据的分割-计算-整合(split-apply-aggregate)
当获取到原始数据时,我们通常的做法是对该数据进行分割成小片段,然后对各小片段进行计算统计,最后整合成最终的数据.这是统计学里数据处理的一般规律. R语言为我们提供了相应的函数来分别处理这三个阶段任务. ...
- Android onTouchEvent和setOnTouchListener中onTouch的区别
OnTouchEvent()方法 是获取的对屏幕的各种操作,比如向左向右滑动,点击返回按钮等等. 属于一个宏观的屏幕触摸监控. OnTouchListener()方法 是获取某一个控件某一个View的 ...
- CentOS7 编译安装golang和rpm安装golang
编译安装 1.下载golang二进制安装包: https://storage.googleapis.com/golang/go1.9.linux-amd64.tar.gz 2.解压安装包到指定目录,此 ...
- 运用 jenkins 让你的项目优雅的持续化集成
0.到系统管理->系统设置 1.安装插件 Publish over SSH 2.配置 Publish over SSH 参数 1.pass 是私钥密码,此私钥文件放在安装 jenkins 的主机 ...
- Spring字符编码过滤器
1 <filter> 2 <filter-name>characterEncodingFilter</filter-name> 3 <filter-class ...
- cocos2d-x android8.0 视频层遮挡问题
cocos里默认情况下视频层是在cocos 层的上面,如果希望把视频层放在cocos的下面的话, android8.0以下,把Cocos2dxVideoHelper.java里的 videoView. ...
- BigDecimal的用法
一.简介 Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算.双精度浮点型变量double可以处理16位有效数.在实际应用中,需要对更大或者更 ...