5.C++中的变量可以“即用即定义”,且可用任何表达式初始化
(C语言硬性要求好像是必须定义在开头,但是C++的这个定义的时候就可以用表达式还是挺不错的~~)
#include <iostream>
using namespace std;
int main()
{
double a=12*3.25;
double b=a+1.112;
cout<<"a contains:"<<a<<endl;
cout<<"b contains:"<<b<<endl;
a=a*2+b;
double c=a+b*a;//“即用即定义”,且可用表达式初始化
cout<<"c contains:"<<c<<endl;
}
6.程序块{}内部作用域可定义外部作用域同名的变量,在该块里就隐藏了外部变量
(这个直接可以加{}还是第一次用,感觉挺好玩的)
#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
int a;
a=2;
{
int a;
a=3;
cout<<a<<endl; //隐藏了外部变量a
{
int a=4;
cout<<a<<endl;
}
}
cout<<a<<endl; //main
return 0;
}
7.for循环语句中可以定义局部变量
#include <iostream>
using namespace std;
int main()
{
int i=0;
for(int i=0;i<4;i++)
{
cout<<i<<endl;
}
cout<<"i contains:"<<i<<endl;
for(i=0;i<4;i++)
{
for(int i=0;i<4;i++)
{
cout<<i<<" ";
}
cout<<endl;
}
return 0;
}
8.访问和内部作用域变量同名的全局变量,要用全局作用域限定::
#include <iostream>
using namespace std;
double a=128;
int main()
{
double a=256;
cout<<"Local a:"<<a<<endl; //输出的是256
cout<<"Global a:"<<::a<<endl; //::是全局作用域限定 ,输出的是128
return 0;
}