c++定义变量?

c++在类里面定义了变量,却提示没有成员变量

变量名规则
先介绍标识符的概念。和其他高级语言一样,用来标识变量、符号常量、函数、数组、类型等实体名字的有效字符序列称为标识符(identifier)。简单地说,标识符就是一个名字。变量名是标识符的一种,变量的名字必须遵循标识符的命名规则。

C++规定标识符只能由字母、数字和下划线3种字符组成,且第一个字符必须为字母或下划线。下面列出的是合法的标识符,也是合法的变量名:
sum, average, total, day, month, Student_name, tan, BASIC, li_ling

下面是不合法的标识符和变量名:
M.D.John, $123, #33, 3G64, Ling li, C++, Zhang-ling, U.S.A.

注意:在C++中,大写字母和小写字母被认为是两个不同的字符。因此,sum和SUM是两个不同的变量名。一般地,变量名用小写字母表示,与人们日常习惯一致,以增加可读性。应注意变量名不能与C++的关键字、系统函数名和类名相同。在国外软件开发工作中,常习惯在变量前面加一个字母以表示该变量的类型,如iCount表示这是一个整型变量,cSex表示这是一个字符型变量。

C++没有规定标识符的长度(字符个数),但各个具体的C编译系统都有自己的规定。有的系统取32个字符,超过的字符不被识别。

定义变量
在C++语言中,要求对所有用到的变量作强制定义,也就是必须“先定义,后使用”,如例2.2和例2.3那样。定义变量的一般形式是:
变量类型 变量名表列;
变量名表列指的是一个或多个变量名的序列。如:
float a,b,c,d,e;
定义a,b,c,d,e为单精度型变量,注意各变量间以逗号分隔,最后是分号。可以在定义变量时指定它的初值。如:
float a=83.5, b, c=64.5, d=81.2, e; //对变量a,c,d指定了初值,b和d未指定初值

C语言要求变量的定义应该放在所有的执行语句之前,而C++则放松了限制,只要求在第一次使用该变量之前进行定义即可。也就是说,它可以出现在语句的中间,如:
int a; //定义变量a(在使用a之前定义)
a=3; //执行语句,对a赋值
float b; //定义变量b(在使用b之前定义)
b=4.67; //执行语句,对b赋值
char c; //定义变量c(在使用c之前定义)
c='A'; //执行语句 ,对c赋值

C++要求对变量作强制定义的目的是:
1) 凡未被事先定义的,不作为变量名,这就能保证程序中变量名使用得正确。例如,如果在声明部分写了
int student;
而在执行语句中错写成statent。如
statent=30;
在编译时检查出statent未经定义,作为错误处理。输出“变量statent未经声明”的信息,便于用户发现错误,避免变量名使用时出错。

2) 每一个变量被指定为一确定类型,在编译时就能为其分配相应的存储单元。如指定a和b为int型,一般的编译系统对其各分配4个字节,并按整数方式存储数据。

3) 指定每一变量属于一个特定的类型,这就便于在编译时,据此检查该变量所进行的运算是否合法。例如,整型变量a和b,可以进行求余运算:
a%b
%是“求余”,得到a/b的余数。如果将a和b指定为实型变量,则不允许进行“求余”运算,在编译时会给出有关的出错信息。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-10-09
C++变量(变量定义和赋值)详解
变量表示计算机内存中的存储位置。使用赋值语句可以将值存储到变量中。

计算机编程中变量的概念与数学上变量的概念有些不同。在编程中,变量是用于保存数据的命名存储位置。变量允许程序员将数据存储到计算机内存中并使用其中的数据。它们提供对 RAM 的访问“接口”。

使用赋值语句可以将值存储到变量中。下面的程序有一个变量和 2 条赋值语句:
// This program has a variable.
#include <iostream>
using namespace std;
int main()
{
int number;
number = 5;
cout << "The value of number is " << number << endl;
number = 7;
cout << "Now the value of number is "<< number << endl;
return 0;
}
程序输出结果
The value of number is 5
Now the value of number is 7
现在来仔细研究一下该程序,从第 7 行开始:
int number;
这就是变量定义,它告诉编译器变量的名称和它将保存的数据的类型。请注意,该定义首先给出数据类型,然后给出变量的名称,并以分号结尾。该变量的名称是 number,单词 int 代表整数,所以变量 number 只能用于保存整数。

注意,在程序中使用的每个变量都必须先有一个定义。在 C++ 中,变量定义可以出现在任何位置,只要在变量被使用之前进行定义即可。后文将介绍定义变量的最佳位置。

现在来看第 9 行:
number =5;
这就是赋值语句,其中的 = 符号称为赋值运算符。该运算符将其右侧的值(这里是 5)复制到其左侧指定的变量(这里是 number)中。该行不会在计算机屏幕上打印任何内容。它在幕后静默运行,在 RAM 中存储一个值。执行该行后,number 变量将被设置为 5。
注意,赋值语句左侧的项目必须是变量。如果写作“5 = number;”则是不对的。

现在来看第 10 行:
cout << "The value of number is " << number << endl;
请注意,该行第一个发送到 cout 的项目周围有双引号环绕,这样会让 C++ 将它识别为字符串,并严格按其书写进行显示。第 2 个发送到 cout 的项目则是一个变量名。

当发送变量名到 cout 时,它将打印变量的内容,所以其显示结果如下:
The value of number is 5
前面讲过,变量之所以称为“变”量,就是因为它们的值是可以改变的。第 12 行的赋值语句将 number 中存储的值替换为 7:
number = 7;
所以,在第 13 行的 cout 语句:
cout << "Now the value of number is " << number << endl;
将输出以下结果:
Now the value of number is 7
第2个回答  2020-10-09
头文件中没加 using namespace std;
或者
std::string id;
std::string name;
std::string tel;
相似回答