一些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.单例模式:
其意图是保证一个类仅有一个实例,并提供一个访问它的全局访问点,该实例被所有程序模块共享。
随机推荐
- 【ccf2017-12-2】游戏(模拟)
问题描述 有n个小朋友围成一圈玩游戏,小朋友从1至n编号,2号小朋友坐在1号小朋友的顺时针方向,3号小朋友坐在2号小朋友的顺时针方向,……,1号小朋友坐在n号小朋友的顺时针方向. 游戏开始,从1号小朋 ...
- Struts03---参数传递
package cn.bdqn.bean; /** * *用户的实体类 */ public class User { private String name; private String passw ...
- 【tensorflow:Google】四、深层神经网络
一.深度学习与深层神经网络 1.线性模型局限性 线性模型无论多少层,表达能力是一致的.可以通过激活函数实现非线性. 2.多层网络可以解决异或运算 二.损失函数定义 1.经典损失函数: 分类问题: 二分 ...
- js 复制粘贴功能记录
最近工作中需要在前端页面中使用代码完成剪贴板的读写,网上搜索了下相应的资料,记录下... 这个功能有两个办法一个是js方式,一个是使用flash 一.JS方法 1.复制 首先复制的过程分为两步曲,无论 ...
- QGrapicsItem类
这个类翻译了好久,实在是成员函数太多了,分享出来,希望对大家有用,多多支持哦~~ 详细介绍 QGraphicsItem类是视图框架的一部分,是在一个QGraphicsScene中最基本的图形类,它为绘 ...
- 单链表删除(Delete)或者去除(Remove)节点面试题总结
(尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/76061004冷血之心的博客) 关于单链表反转的多种形式请参见本博文 ...
- 防止前端脚本JavaScript注入
在使用ajax进行留言的时候,出现了一个问题.因为留言内容写完之后,通过ajax提交内容,同时使用js把留言的内容添加到页面上来.浏览留言的时候也是通过ajax请求,然后再显示的.这样,如果有人在留言 ...
- C/C++ 安全编码 —— 指针与内存
1. 仿踩内存 if (buf[len - 1] != 0x5A) { return; }
- python 中出现 “IndentationError: expected an indented block” 问题
python 学习 在定义Python函数的时候如下 >>>def hello() . . .print "hello" 这样会报错的,报错如下: Indenta ...
- 深度学习实战-----0001(移植反向传播Python to c++)
1. https://mattmazur.com/2015/03/17/a-step-by-step-backpropagation-example/ 老外教程 2. https://github. ...