1. 变量初始化的两种方式
返回类型一般指返回引用类型,即函数返回值类型。
申明一个引用的时候,切记要对其进行初始化。引用声明完毕后,相当于目标变量名有两个名称,即该目标原名称和引用名,不可以把该引用名作为其他变量名的别名。
申明一个引用,不是新定义了一个变量,它只表示该引用名是目标变量名的一个别名,它本身不是一种数据类型,因此引用本身不占存储单元,系统也不给引用分配存储单元。
扩展资料
使用返回类型的优势——
1、使用引用传递函数的参数,在内存中并没有产生实参的副本,它是直接对实参操作;而使用一般变量传递函数的参数,当发生函数调用时,需要给形参分配存储单元,形参变量是实参变量的副本;
如果传递的是对象,还将调用拷贝构造函数。因此,当参数传递的数据较大时,用引用比用一般变量传递参数的效率和所占空间都好。
2、使用指针作为函数的参数虽然也能达到与使用引用的效果。在被调函数中同样要给形参分配存储单元,且需要重复使用"*指针变量名"的形式进行运算,容易产生错误且程序的阅读性较差。但在主调函数的调用点处,必须用变量的地址作为实参。而引用更容易使用,更清晰。
2. 变量初始化的两种方式是
1.变量名,方法名称要做到见名知意 2.变量定义后要初始化,也就是要赋初值 3.代码段格式整齐,有缩进。
4.单行语句不要过长等
3. 变量初始化的方法
1.初始化,简而言之,分配空间就是初始化了。
比如int i;或者int i=1;都是初始化语句。比如类A有构造函数A() 那么A a();或者 A a;就是对其初始化。
同样int i=1;是初始化语句,相当于这样初始化int i(1);可以说是初始化,又可以称为初始化赋值。如果int i;这样写,i的值是上一次栈内存上运行的结果,而不是初始化赋予的值。
2.
struct{
int a;
char b;
}st={3,'s'};
printf("%d\t%d\n",st.a,st.b);
这样写在gcc上完全没错,输出3 155。
3.这个一般结构体的意义是什么?是一个标准,不是给你用来定义的,语法规定如此。
4.函数的形参也不能被初始化。
4. 变量初始化的规则
局部变量在进入过程时应该初始化变量,但变量的数据类型不同,初始化后变量的初值是不同的,对于字符串变量初始化为空字符串,数字变量初始化为0,而日期变量初始化为0:00:00,逻辑性变量初始化为false,等等,所以只能说不完全对。
5. 变量初始化在哪一个阶段完成
3种,分别是全局变量初始化,全局静态变量初始化,局部变量初始化,局部静态变量初始化
- 相关评论
- 我要评论
-