C++中出现的计算机术语2
C-style strings(C 风格字符串)
C 程序把指向以空字符结束的字符数组的指针视为字符串。在 C++ 中,字符串字面值就是 C 风格字符串。C 标准库定义了一系列处理这样的字符串的库函数,C++ 中将这些标准库函数放在cstring 头文件里。因为 C 风格字符串本质上easy出错,C++程序应该优先使用 C++ 标准库类 string 而少用 C 风格字符串。网络程序中大量的安全漏洞都源于与使用 C 风格字符串和数组相关的缺陷。
compiler extension(编译器扩展)
特定编译器为语言加入的特性。依赖于编译器扩展的程序非常难移植到其它的编译器。
compoundtype(复合类型)
使用其它类型定义的类型。数组、指针和引用都是复合类型。
const void*
能够指向随意 const 类型的指针类型,參见void *。
delete expression(delete 表达式)
delete 表达式用于释放由 new 动态分配的内存: delete [] p;
在此表达式中,p 必须是指向动态创建的数组中第一个元素的指针,当中方括号不可缺少:它告诉编译器该指针指向数组,而非单个对象。C++程序使用 delete 代替 C 语言的标准库函数 free。
dimension(维数)
数组大小。
dynamic allyallocated(动态分配的)
在程序自由存储区中建立的对象。该对象一经创建就一直存在,直到显式释放为止。
free store(自由存储区)
程序用来存储动态创建对象的内存区域。
heap(堆)
自由存储区的同义词。
new expression(new 表达式)
用于分配动态内存的表达式。以下的语句分配了一个有 n 个元素的数组: new type[n];
该数组存放 type 类型的元素。new返回指向该数组第一个元素的指针。C++ 程序使用 new 代替 C 语言的标准库函数 malloc。
pointer(指针)
存放对象地址的对象。
pointer arithmetic(指针算术操作)
可用于指针的算术操作。同意在指针上做加上或减去整型值的操作,以获得当前指针之前或之后若干个元素处的地址。两个指针可做减法操作,得到它们之间的差值。仅仅有当指针指向同一个数组或其超出末端的位置时,指针的算术操作才有意义。
precedence(优先级)
在复杂的表达式中,优先级确定了操作数分组的次序。
ptrdiff_t
在 cstddef 头文件里定义的与机器相关的有符号整型,该类型具有足够的大小存储两个指针的差值,这两个指针指向同一个可能的最大数组。
size_t
在 cstddef 头文件里定义的与机器相关的无符号整型,它具有足够的大小存储一个可能的最大数组。
*operator(* 操作符)
对指针进行解引用操作获得该指针所指向的对象。解引用操作符返回左值,因此可为其结果赋值,等效于为该指针所指向的特定对象赋新值。
++operator(++ 操作符)
用于指针时,自增操作符给指针“加 1”,移动指针使其指向数组的下一个元素。
[]operator([] 操作符)
下标操作符接受两个操作数:一个是指向数组元素的指针,一个是下标 n。该操作返回偏离指针当前指向 n 个位置的元素值。数组下标从 0 開始计数——数组第一个元素的下标为 0,最后一个元素的下标是数组长度减1。下标操作返回左值,可用做赋值操作的左操作数,等效于为该下标引用的元素赋新值。
&operator(& 操作符)
取地址操作符须要一个操作数,其唯一的操作数必须是左值对象,该操作返回操作数对象在内存中的存储地址。
void*
能够指向不论什么非 const 对象的指针类型。void*指针仅仅提供有限的几种操作:可用作函数形參类型或返回类型,也可与其它指针做比較操作,可是不能进行解引用
assert
一种预处理宏,使用单个表达式作为断言条件。假设预处理变量NDEBUG 未定义,则 assert 将求解它的条件表达式。若条件为false,assert 输出信息并终止程序的运行。
block(块)
包括在一对花括号中的语句序列。在语法上,块就是单语句,可出如今不论什么单语句能够出现的地方。
break statement(break 语句)
一种语句,可以终止近期的循环或者switch 语句的运行,将控制权交给被终止的循环或者 switch 后的第一条语句。
case label(case 标号)
switch 语句中跟在keyword case 后的整型常量值。在同一个switch 结构中不能有不论什么两个标号拥有同样的常量值。假设 switch 条件表达式的值与当中某个标号的值相等,则控制权转移到匹配标号后面的第一条语句,从这样的语句開始依次继续各个语句,直到遇到break 或者到达
switch 结尾为止。
catch clause(catch 子句)
一种语句,包含keyword catch、圆括号内的异常说明符以及一个块语句。catch子句中的代码实现某种异常的处理,该异常的处理,该异常由圆括号内的异常说明符定义。
compound statement(复合语句)
块的同义词。
continue statement(continue 语句)
一种语句,可以结束近期的循环结构的当次循环迭代,将控制流转移到 while或 do 的循环条件表达式,或者 for 语句头中第三个表达式。 dangling else(悬垂 else) 一个通俗术语,指出怎样处理嵌套 if 语句中 if 多于 else 时发生的二义性问题。C++ 中,else 总是与近期的未匹配的 if 配对。注意使用花括号能有效地隐藏内层 if,使程序猿可以控制给定的else 与哪个 if 相匹配。
declaration statement(声明语句)
定义或者声明变量的语句。声明已在 第二章中介绍。
default label(default 标号)
switch 语句中的一种标号,当计算 switch 条件所得的值与全部 case
标号的值都不匹配时,则运行 default 标号关联的语句。
exception classes(异常类)
标准库定义的一组描写叙述程序错误的类。表6.1 列出了常见的异常。
exception handler(异常处理代码)
一段代码,用于处理程序某个部分引起的异常。是catch 子句的同义词。
exception specifier(异常说明符)
对象或类型的声明,用于指出当前的catch 能处理的异常类型。
expression statement(表达式语句)
一种语句,由后接分号的表达式构成。表达式语句用于表达式的求解。
flow of control(控制流)
程序的运行路径。
goto statement(goto 语句)
一种语句,可以使程序控制流程无条件跳转到指定标号语句。goto扰乱了程序内部的控制流,应尽可能避免使用。
if else statement(if else 语句)
一种语句,有条件地运行 if 或else 后的代码,怎样运行取决于条件表达式的真值。
if statement(if 语句)
基于指定条件值的条件分支语句。假设条件为真,则运行 if语句体;否则,控制流转到 if 后面的语句。
labeled statement(带标号的语句)
以标号开头的语句。标号是后面带一个冒号的标识符。
null statement(空语句)
空白的语句。其语法形式为单个分号。
preprocessor macro(预处理宏)
与预处理器定义的设施相似的函数。assert是一个宏。现代 C++ 程序非常少使用预处理宏。
raise(引发)
经常使用作 throw 的同义词。C++程序猿所说的“抛出(throwing)”或者“引发(raising)”异常表示一样的含义。
switch statement(switch 语句)
从计算keyword switch 后面的表达式開始运行的条件分支语句。程序的控制流转跳到与表达式值匹配的case 标号所标记的标号语句。假设没有匹配的标号,则运行 default 标号标记的分支,假设没有提供default 分支则结束 switch 语句的运行。
terminate
异常未被捕获时调用的标准库函数。一般会终止程序的运行。 throw expression(throw 表达式) 中断当前运行路径的表达式。每一个throw 都会抛出一个对象,并将控制转换到近期的可处理该类型异常的 catch 子句。
try block(try 块)
跟在keyword try 后面的块,以及一个或多个catch 子句。假设 try 块中的代码产生了异常,并且该异常类型与当中某个catch 子句匹配,则运行这个 catch 子句的语句处理这个异常。否则,异常将由外围try 块处理,或者终止程序。
while loop(while 循环)
当指定条件为 true 时,运行目标代码的控制语句。依据条件的真值,目标代码可能运行零次或多次。
C++中出现的计算机术语2的更多相关文章
- C++中出现的计算机术语1
access labels(訪问标号) 类的成员能够定义为 private,这能够防止使用该类型的代码訪问该成员. 成员还能够定义为 public,这将使该整个程序中都可訪问成员. address( ...
- C++中出现的计算机术语4
adaptor(适配器) 一种标准库类型.函数或迭代器,使某种标准库类型.函数或迭代器的行为类似于第二种标准库类型.函数或迭代器.系统提供了三种顺序容器适配器:stack(栈).queue(队列)以及 ...
- Java中的那些名词术语(不断更新中)
在工作和学习中,总会遇到各种术语.岁月不饶人,记忆力越来越下降.在这里记录下那些曾经关注过学习过的东西. POJO: Plain Old Java Object DI: Dependency Inje ...
- C++出现计算机术语5
class template(类模板) 可以用来定义一个类定义了一组特定类型的类的.类模板template keyword其次是尖括号(<>)附上.的列表来定义. export keywo ...
- ES6中ArrayBuffer与计算机字节序
1.什么事字节序? 字节序指的是数值在内存中的表示方式. const buffer = new ArrayBuffer(16); const int32View = new Int32Array(bu ...
- 计算机术语install和setup的区别
作为安装程序的Setup文件是软件的开发者专门为其软件设计的.exe文件,是当前最为盛行的安装程序.在运行该Setup文件进行软件安装时,Setup除了进行复制.改名.解压和目录维护等基本安装工作外, ...
- HLA中常用的基本术语
(1)联邦(Federation):用于实现某一特定仿真目的的分布仿真系统. (2)联邦成员(Federate):参与联邦的所有应用都称为联邦成员,简称成员. (3)对象(Object):构成成员的基 ...
- .NET框架中系列专业技术术语和缩写
CIL (Common Intermediate Language) 公共中间语言 : CIL最初是随着.NET由微软一起发布的,之前也叫MSIL(Microsoft Intermediate Lan ...
- 【Java面试宝典】说说你对 Spring 的理解,非单例注入的原理?它的生命周期?循环注入的原理, aop 的实现原理,说说 aop 中的几个术语,它们是怎么相互工作的?
AOP与IOC的概念(即spring的核心) IOC:Spring是开源框架,使用框架可以使我们减少工作量,提高工作效率并且它是分层结构,即相对应的层处理对应的业务逻辑,减少代码的耦合度.而sprin ...
随机推荐
- NSIS:延时启动软件的几个方法及探索
原文NSIS:延时启动软件的几个方法及探索 有时候,我们想要某软件开机启动,但又不要拖慢开机速度,那么,延时启动技术就显得比较重要了.轻狂在这方面曾经研究过,也实现了自己想要的功能,看看我是怎么做的吧 ...
- 使用 Advanced Installer 打包 一键安装Web应用程序
原文:使用 Advanced Installer 打包 一键安装Web应用程序 安装预览: 资源下载: 示例安装包 操作流程: 1.新建Asp.net Application. 2.设置应用程序名称和 ...
- CMap与hash_map效率对照
CMap与hash_map底层均採用hash stable实现,CMap是MFC提供的模板类.hash_map尽管眼下并未纳入C++标准模板类库,但差点儿每一个版本号的STL都提供了对应的实现.CMa ...
- 通过管道进行线程间通信:字节流。字符流的用法及API类似
管道流(PipedStream)可以用于不同线程间直接传送数据.一个线程发送数据到输出管道,另一个线程从输入管道中读取数据.通过使用管道,实现不同线程间的通信,而无须借助于类似临时文件之类的东西. p ...
- MYSQL 优化指南
数据库设计原则 标准化和规范化 数据库设计范式(3NF) 第一范式 数据属性唯一标示 在任何一个关系数据库中,第一范式(1NF)是对关系模式的基本要求,不满足第一范式(1NF)的数据库就不是关 ...
- Unity3D游戏开发最佳实践20技能(两)
[扩展和MonoBehaviourBase] 21.扩展一个自己的Mono Behaviour基类.然后自己的全部组件都从它派生 这能够使你方便的实现一些通用函数.比如类型安全的Invoke.或者是一 ...
- Javascript学习8 - 脚本化文档(Document对象)
原文:Javascript学习8 - 脚本化文档(Document对象) 每个Web浏览器窗口(或帧)显示一个HTML文档,表示这个窗口的Window对象有一个document属性,它引用了一个Doc ...
- Facebook的ATOM Editor的底层Electron
Facebook的ATOM Editor的底层Electron 开源牛人 zcbenz 事情是这样的,微软推出了Visual Studio Code,我很好奇他怎么做跨平台的,所以就找找资料,在他的网 ...
- Sort函数的相关知识
sort与stable_sort 需包含头文件:#include <algorithm>因为它是库函数 这两个函数的原理都是快速排序,时间复杂度在所有排序中最低,为O(nlog2n) ...
- ftp设置(2015-04-04)[转]
anonymous_enable=YES /允许匿名访问 12行local_enable=YES /允许本地用户访问(/etc/passwd中的用户) 15行write_enable=YES /允许写 ...