标识符的长度应当符合“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 ;
}