对于c++中四个基本准则的理解极其具体体现
最高准则:无二义性
对这个准则的理解:
一条语句只有一种理解方式,执行唯一确定的操作
准则的具体体现:
(1) 运算符的优先级与结合性。
目的:消除运算时的歧义
1、优先级:
一共十五级,一级最高,十五级最低,优先级较高的先运算
2、结合性:
左结合性和右结合性
(2) 标识符不能以数字开头
若可以以数字开头,则计算机无法判断这个标识符是数字还是常量
(3) 贪心规则
对于一种方式有多种理解时,计算机会尽可能多地结合有效符号,找到最短路径
第二高准则:高效性
理解:
通过一些规定,来减少不必要的运算(减少后也不会发生歧义),确保高效性
具体体现:
(1) 数组下标0索引
减少一次计算,同时不会产生歧义
(2) 逻辑短路逻辑短路规则为对于表达式a&&b 当a为假时,b不会计算。(因为此时已经不需要在进行判断了,a&&b已经为假)
第三高准则:合乎日常习惯
理解:
编程语言是由人来编写的,人具有思维惯性,因此编程语言应该合乎日常习惯(在确保无二义性和高效性的前提下),这样才能够方便程序员编写
体现:
1、运算符的优先级同数学中一样。
同级运算符结合性为左结合,同阅读习惯一样。
2、最基本的三种程序运行结构(顺序,选择,循环)运行时,编译器均是从左往右、从上往下读取,符合人们日常阅读习惯
补充准则:相似相同准则
理解:两个对象,具有相似行为,则c++中会为这两个对象增加对方的行为(通过规定来实现)
体现:
1、变量、数组、指针的初始化方式
2、让指针指向数组,在对数组赋值时,也会通过相似相同准则来规定四种赋值方式