C++四个基本准则及具体表现

    科技2026-08-06  3

    C++编程语言的四个基本准则

    几乎所有的C++中的语法推导,都可以按照这几条基本原则来推导。

    一、最高准则:无二义性

    **对这个准则的理解:**算法的每一个步骤,必须要有确切的含义,计算机通过特殊的规则进行数据处理。当每次进行相同输入时,会输出相同的结果,这就是最高准则。 准则的具体表现:

    运算符的优先级与结合性。 运算符的优先级能消除一个算式的二义性,使其更合乎人的逻辑,如3+4*5,运算顺序是先乘后加,消除先加后乘的二义性。 示例: int a=3+4*5; cout<<a<<endl; 此时输出结果为23即进行先乘后加。 运算符的结合性是指同一优先级的运算符在表达式中的操作方向,如x=y=z,应先将z的值幅值给y,再将y的值幅值给x;标识符不能以数字开头 例如:0x7C7D(16进制数),014(8进制数),均具有二义性。所以数字开头的变量名与C++支持的常量表示法有一个式子,两种含义的部分。这会使程序出错。贪心规则 对于C++语言的一个逻辑算法,虽可能存在多个解决方案,但总是会优先选择“最优解”。 示例:i+++j,是按照i+(++j)运算还是(i++)+j运算呢?根据贪心规则,在分析符号的时候,编译器会尽可能多地结合有效的符号,例如上面的表达式:“+” 和“++”都是有效地符号,但是“+++”不是有效的符号,因此,经过分析后,最终将表达式解析为:++ +。 i+++j

    二、次高准则:高效性

    **对这个准则的理解:**在高级语言中,面向过程的C++以短小精悍,简洁高效,能够直接操作备受人们青睐,如指针、引用、内联函数,都使其高效性的体现。 **准则的具体表现:**就以简单的指针为例,指针能够直接对内存单元里的数据进行操作,不必要通过变量名找到数据对应地址,节省了时间开销。

    #include <iostream> using namespace std; int main () { int var = 20; // 实际变量的声明 int* ip; // 指针变量的声明 ip = &var; // 在指针变量中存储 cout << "Value of var variable: "; cout << var << endl;

    三、第三准则:合乎日常习惯

    **对这个准则的理解:**程序设计应该尽量贴合日常逻辑思维,违反日常习惯的规则,徒劳增加不必要的理解时间。 准则的具体表现:

    运算的优先级: 程序员在数学中,乘法的优先级高于加法,先计算乘法再计算加法。同样,运用括号作为最高优先级而先进行其中的运算。这样的设计贴合程序员日常习惯,提升了工作效率。二维数组下标表示总行数和总列数: 例如a[n][m]用下标n和m表示一个n行m列的矩阵,合乎日常习惯。

    四、补充准则:相似相同原则

    对这个准则的理解: C++中,如果有两个不同的对象A与B,A有行为a,B有行为b,如果a与b两种行为在逻辑上具有相似性,则C++会为对象A额外增加一个行为b,也会将对象B额外增加一个行为a。 准则的具体表现:(1)变量的初始化: 如定义变量a等于5,一般是int a=5; 但也有int a(5); (括号的初始化,形似对象的初始化);还有int a={5};有int a{5};;以及int a=({5});

    Processed: 0.009, SQL: 9