内存对齐
常量折叠 
堆栈解退(stack unwinding) 
模板特化
模板偏特化 
模板实例化 
函数对象 
单一定义规则(One-Definition Rule,ODR) 
自引用

 
对象切片(object slicing)/切割:当把一个派生类对象赋给一个基类对象时,会发生对象切割。(另外用基类对象强制转换派生类对象也会),多态的实现是通过指针和引用;而对象的转换只会造成对象切割,不能实现多态。

所有权语义(owership semantics) 
破坏性复制语义(distructive copy semantics) 
菱形继承 
向下强制:基类到派生类的转换 
向上强制:派生类到基类的转换 
交叉强制:从一个基类向其兄弟类的强制(多重继承中涉及) 
RTTI:运行时类型信息,dynamic_cast,type_info
谓词:返回bool函数对象(或者函数),有一元谓词和二元谓词,标准库中有谓词 
活动记录(activation record) 
堆栈帧(stack frame)/调用栈 
using声明与using指令 
内存中编译(in-memory compilation) 
窥孔优化器(peephole optimizer) 
易碎的基类问题(fragile base-class problem) 
句柄类(handle class) 
可重入函数 
位拷贝与值拷贝:位拷贝拷贝的是地址,而值拷贝则拷贝的是内容 
浅拷贝(shallow copy)与深拷贝 
返回值优化(return value optimization) 
引用计数(reference counting) 
写拷贝/写时复制(copy-on-write) 
扇出(fan-out) 
重定义(redefining):子类重新定义父类中有相同名称的非虚函数 ( 参数列表可以不同 ) 。 
覆盖/重写(overriding):父类与子类之间的多态性。子类重新定义父类中有相同名称和参数的虚函数。 
重载(overload) 
多重指派(multiple dispatching) 
异常中立的(exception neutral) 
模板元编程 
稳定排序与不稳定排序 
惰性初始化(lazy initialization) 
多重赋值 
函数调用栈(function call stack) 
逆变性与协变返回类型 
继承树 
资源获取即初始化RAII(resource acquisition is initialization)

关联名字查找ADL

内存泄露(memory leak)

野指针(wildpointer)

Liskov置换原则:
定义1:如果对每一个类型为 T1的对象 o1,都有类型为 T2 的对象o2,使得以 T1定义的所有程序 P 在所有的对象 o1 都代换成 o2 时,程序 P 的行为没有发生变化,那么类型 T2 是类型 T1 的子类型。
定义2:所有引用基类的地方必须能透明地使用其子类的对象。
  里氏替换原则通俗的来讲就是:子类可以扩展父类的功能,但不能改变父类原有的功能。它包含以下4层含义:
    子类可以实现父类的抽象方法,但不能覆盖父类的非抽象方法。
    子类中可以增加自己特有的方法。
    当子类的方法重载父类的方法时,方法的前置条件(即方法的形参)要比父类方法的输入参数更宽松。
    当子类的方法实现父类的抽象方法时,方法的后置条件(即方法的返回值)要比父类更严格。

短路求值(short-circuit evaluation)
返回值优化(Return Value Optimization RVO)
koenig查找:名字查找规则

C++ 常用术语(后续补充)的更多相关文章

  1. OLE/COM 对象查看器 & OLE常用术语

    "OLE/COM Object Viewer"(OLE/COM 对象查看器)查看你系统上安装的所有 COM 对象时,是一个非常便利的工具. 它是 Windows 2000 资源套件 ...

  2. zabbix常用术语

    zabbix常用术语  

  3. Hacker(七)----黑客常用术语和DOS命令

    掌握基本的黑客术语和DOS命令是一名黑客最基本的技能,黑客术语能够实现自己和其他人之间的正常交流.DOS命令就是DOS操作系统的命令,它是一种面向磁盘的操作命令.黑客在入侵目标主机的过程中经常会使用这 ...

  4. python基础----面向对象的程序设计(五个阶段、对小白的忠告、关于OOP常用术语)、类、对象

    一.面向对象的软件开发有如下几个阶段                                              1.面向对象分析(object oriented analysis ,O ...

  5. 第三十三篇 Python中关于OOP(面向对象)的常用术语

    面向对象的优点 从编程进化论可知,面向对象是一种更高等级的结构化编程方式,它的好处主要有两点: 1. 通过封装明确了内外,你做为类的缔造者,你就是女娲,女娲造物的逻辑别人无需知道,女娲想让你知道,你才 ...

  6. todo----mysql常用语句总结补充完成

    todo----mysql常用语句总结补充完成

  7. 【ABAP系列】SAP ABAP 总结常用术语简称解析

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP 总结常用术语简 ...

  8. elasticsearch 基础 —— Common Terms Query常用术语查询

    常用术语查询 该common术语查询是一个现代的替代提高了精确度和搜索结果的召回(采取禁用词进去),在不牺牲性能的禁用词. 问题 查询中的每个术语都有成本.搜索"The brown fox& ...

  9. Zabbix 常用术语

    Zabbix 常用术语 1.主机(host) 一台你想监控的网络设备,用IP或域名表示 2.主机组(host group) 主机的逻辑组;它包含主机和模板.-个主机组里的主机和模板之间并没有任何直接的 ...

随机推荐

  1. mysql TIMESTAMP详解

    navicat中设置timestamp字段的时间,默认这里填写CURRENT_TIMESTAMP,就是在插入数据的时候按照当前时间插入: 勾选根据当前时间戳更新,表示在UPDATE的时候,会根据当前时 ...

  2. mac os下获得root权限

    警告:对系统不了解的请慎用 操作步骤:1.打开实用工具->终端2.键入sudo passwd root 然后提示你输入当前登录用户密码,通过以后,提示你输入两遍root的密码.这样你就设置好ro ...

  3. php二位数组合并

    转自:http://www.cnblogs.com/losesea/archive/2013/06/14/3134900.html 题目:有以下2个二维数组 1$a=Array(0 => Arr ...

  4. Fragment基础讲解

    //新建一个碎片public class LeftFragment extends Fragment { @Override public View onCreateView(LayoutInflat ...

  5. SU unif2命令学习

  6. BeagleBone Black项目实训手册(大学霸内部资料)

    BeagleBone Black项目实训手册(大学霸内部资料) 介绍:本教程是<BeagleBone Black快速入门教程>的后续教程.本教程以项目操作为主,讲解LED项目.声音项目.传 ...

  7. Javascript的对象封装和继承有哪些方法?优劣分别是什么?

    1.对象封装方法 (1)原始模式生成对象 直接将我们的成员写入对象中,用函数返回. 缺点:很难看出是一个模式出来的实例. function Stu(name, score) {             ...

  8. html成绩单表格

    <!DOCTYPE html> <html> <head> <meta name="generator" content="HT ...

  9. ZOJ2332 Gems(最大流)

    题目大概说,alsomagic有宝石,宝石有颜色和形状两个属性:他有一种法力可以将某些颜色形状的宝石转化成另一种颜色形状的宝石:他的女朋友对各个颜色都有一定的容忍数量,而他自己也对各个形状都有一定的容 ...

  10. BZOJ3780 : 数字统计

    从低位到高位数位DP,f[i][j][k]表示已经填了后i位,转化的数字为j,后i位与x后i位的大小关系为k的方案数. #include<cstdio> const int N=202,B ...