面向对象02-C++编程语言的基本准则

最高准则——无二义性

这个准则,不仅是C++的准则。更是所有类型编程语言的最高准则。或者说,更是任何逻辑体系的最高准则。无二义性保证向计算机输入的每一条指令都只有一种执行方式。编程语言出现二义性会导致灾难性的后果。
如运算符的优先性与结合性,变量名不能以数字开头,也不能是关键字,本质上都是为了消除二义性而设计的。

int x = 3*4+5
//运算符优先级(3+4)*5     3+(4*5) ?

次高准则——高效性

在C++语言出现之时,计算机的性能普遍较低。因此C++的早期语法规则对程序的运行性能有许多优化。比如操作A和B,若A和B都满足无二义性,但是A的性能比B的高效,则C++会优先采用A。
在许多现代语言中,高效性不再作为强制要求。并且在C++高级语法和标准库中,高效性已经不再是最高准则了。
如数组下标以0索引,逻辑短路——优先对并列条件的第一个作出判断等。

第三——合乎日常习惯

一套与日常习惯不相符的规则,会对程序员的使用带来极大的不便。因为日常语言的惯性是极其强大的。如果一门编程语言与日常习惯格格不入,人们就会放弃该语言。
特例:数组下标以0索引,在此对高效性的需求超过了对合乎日常习惯的追求。

补充——相似相同规则

指在语法上相似的规则会进行迁移合并。如在C++新标准中出现了以下的初始化赋值形式

int a=3;
int a(3);
int a{3};
int a={3};
//效果与第一句相同,注意花括号的初始化形式不允许默认类型转换
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值