标识符的长度应当符合“min-length && max-information”原则。 几十年前老 ANSI C 规定名字不准超过 6 个字符,现今的 C++/C 不再有此限制。一 般来说,长名字能更好地表达含义,所以函数名、变量名、类名长达十几个字符不足为 怪。

那么名字是否越长约好?不见得! 例如变量名 maxval 就比 maxValueUntilOverflow 好用。

单字符的名字也是有用的,常见的如 i,j,k,m,n,x,y,z 等,它们通常可用作函数 内的局部变量。

 #include <iostream>

 using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
const int MAX=; //假定栈中最多保存5个数据
//定义名为stack的具有栈功能的类
class stack {
//数据成员
float num[MAX]; //存放栈数据的数组
int top; //指示栈顶位置的变量
public:
//成员函数
stack(char c) //初始化函数
{
top=;
cout<<"Stack "<<c<<" initialized."<<endl;
}
void push(float x) //入栈函数
{
if (top==MAX){
cout<<"Stack is full !"<<endl;
return;
};
num[top]=x;
top++;
}
float pop(void) //出栈函数
{
top--;
if (top<){
cout<<"Stack is underflow !"<<endl;
return ;
};
return num[top];
}
}; int main(int argc, char** argv) {
//声明变量和对象
int i;
float x;
stack a('a'),b('b'); //声明(创建)栈对象并初始化 //以下利用循环和push()成员函数将2,4,6,8,10依次入a栈
for (i=; i<=MAX; i++)
a.push(2.0*i); //以下利用循环和pop()成员函数依次弹出a栈中的数据并显示
for (i=; i<=MAX; i++)
cout<<a.pop()<<" ";
cout<<endl;
return ;
}

标识符的长度应当符合“min-length && max-information”原则的更多相关文章

  1. 是什么让.NET7的Min和Max方法性能暴增了45倍?

    简介 在之前的一篇文章.NET性能系列文章一:.NET7的性能改进中我们聊到Linq中的Min()和Max()方法.NET7比.NET6有高达45倍的性能提升,当时Benchmark代码和结果如下所示 ...

  2. Linq查询Count、Sum、Min、Max、Average

    原文地址:Linq——Count.Sum.Min.Max.Average作者:mousekitty Linq查询之Count.Sum.Min.Max.Average using System; usi ...

  3. Min and Max

    Min and Max 需要处理不同数据类型; 另外*args, 表示的是位置参数, *kwargs表示的是key参数, args的类型为tuple类型, 参数为min(3, 2)时, args为(3 ...

  4. 5.7.2.2 min()和max()方法

    Math对象还包含许多方法,用于辅助完成简单和复杂的数学计算. 其中,min()和max()方法用于确定一组数值中的最小值和最大值.这两个方法都可以接受任意多个数值参数,如下例子: var max = ...

  5. C语言:min和max头文件

    转自:http://www.cppblog.com/jince/archive/2010/09/14/126600.html min和max头文件 虽然说求最大值最小值函数在哪个头文件下并不是非常重要 ...

  6. 随机获取min和max之间的一个整数

    // 随机获取min和max之间的一个整数 const randomNum = (Min, Max) => { let Range = Max - Min; let Rand = Math.ra ...

  7. JS单体内置对象之Math常用方法(min,max,ceil,floor,round,random等)

    1.min()和max()方法 Math.min()用于确定一组数值中的最小值.Math.max()用于确定一组数值中的最大值. alert(Math.min(2,4,3,6,3,8,0,1,3)); ...

  8. mysql中min和max查询优化

    mysql max() 函数的需扫描where条件过滤后的所有行: 在测试环境中重现: 测试版本:Server version:         5.1.58-log MySQL Community ...

  9. min cost max flow算法示例

    问题描述 给定g个group,n个id,n<=g.我们将为每个group分配一个id(各个group的id不同).但是每个group分配id需要付出不同的代价cost,需要求解最优的id分配方案 ...

随机推荐

  1. [原创]JAVA技巧:去除ArrayList<Object>里面的重复记录

    简单说明 ArrayList中保存的是某种类型的对象,如User,现在需要将对象属性userid重复的都去掉,使userid唯一,要如何处理? 实现步骤 代码如下方所示,实现一个Comparator的 ...

  2. Qt中使用DOM解析XML文件或者字符串(实例)

    因为需要读取配置文件,我的配置文件采用xml:因此编写了使用qt读取xml文件内容的代码,xml文件如下: <?xml version="1.0" encoding=&quo ...

  3. ev3dev:设置自动登录wifi

    ev3有时系统不能自动输入wifi密码,在ev3主机上按来按去太麻烦了.看了下官网,解决方案如下: 主要是利用工具:connmanctl,这是一个交互式工具. robot@ev3dev:~$ sudo ...

  4. linux快速进入全屏命令行模式

    按CTRL+ALT+F1~6就可以了.F7是桌面环境.

  5. Apache Commons Lang的StringUtils.isEmpty(STR)和StringUtils.isBlank(STR)

    Apache Commons Lang是常用的基础框架,其中字符串判空在项目中尤为常用,而自己常常忘记他们的区别. package com.nicchagil.test; import org.apa ...

  6. Zookeeper运维的一些经验[转]

    Zookeeper是一个分布式协调框架,有不错的性能,也经过许多公司的验证,所以在很多场景都有使用.大家一般用Zookeeper来实现服务发现(类似DNS),配置管理,分布式锁,leader选举等.在 ...

  7. Ngen.exe和本机映像缓存

    本机映像生成器创建托管程序集的本机映像,并且将该映像安装到本地计算机的本机映像缓存中.本机映像缓存是全局程序集缓存的保留区域.一旦您为某个程序集创建了本机映像,运行库在每次运行该程序集时就会自动使用该 ...

  8. 【Maven学习】Maven打包生成普通jar包、可运行jar包、包含所有依赖的jar包

    http://blog.csdn.net/u013177446/article/details/54134394 ******************************************* ...

  9. LeetCode: Set Matrix Zeroes 解题报告

    Set Matrix ZeroesGiven a m x n matrix, if an element is 0, set its entire row and column to 0. Do it ...

  10. Thrift RPC框架介绍

    u 简介 Thrift是一种开源的跨语言的RPC服务框架.Thrift最初由facebook公司开发的,在2007年facebook将其提交apache基金会开源了.对于当时的facebook来说创造 ...