简单分为:全局作用域、局部作用域、语句作用域
如果希望在局部变量的作用域内使用同名的全局变量,可以在该变量前加上“::”
::aver=20
#include<iostream>
using namespace std;
int var = 20;
int main(int argc, char *argv[])
{
    int var = 10;
    cout<<var<<endl;   //10
    cout<<::var<<endl;  //20
    return 0;
}
 
在C++中,结构名、联合名(共用体名)、枚举名都是类型名。
结构、联合和枚举名可直接作为类型名
#include<iostream>
using namespace std;
struct Student {
    string name;
    int age;
};
int main(int argc, char *argv[])
{
    Student stu;
    return 0;
}
 
{}代码块
如果在代码块”{}”中定义了变量,则该变量的生存周期和作用域将被限制在该代码块内。
#include<iostream>
using namespace std;
int main(int argc, char *argv[])
{
    int var = 20;
    {
        int var = 30;
        cout<<var<<endl;  //30
    }
    cout<<var<<endl;  //20
    return 0;
}
 
const修饰符
const int LIMIT = 100;
LIMIT = 100;  //error
int* p = &LIMT; //error
const修饰符
const修饰符 用const修饰符定义常量。一般的语法格
const 类型名 常量名=常量值(表达式);
对于上例,用const定义为:
   fun(&LIMIT); //error void fun(int
*a);
指向常量的指针变量:
如:const char * p_name = name1;
常(量)指针:
如: char * const p_name = name1;
指向常量的常(量)指针:
如: const char * const name = "chen";
 
引用:
引用就是给变量一个别名,使指针运算 更加方便
引用的定义
类型名 &别名=变量名或别名; 
如:int a=5;int &b=a;
 
定义引用时必须初始化,之后不可重新赋新值
错误示例: 
int a;
int &b; //错误 
b = a;
初始化可以为另一个引用名,如下:
int a;
int &b = a;
int &c = b;
通过引用参数产生的效果同按地址传 递是一样的
引用的语法更清楚简单 函数调用时传递的实参不必加“&”符 
在被调函数中不必在参数前加“*”符 

最新文章

  1. codevs1316 文化之旅
  2. 相机拍的图,电脑上画的图,word里的文字,电脑屏幕,手机屏幕,相机屏幕显示大小一切的一切都搞明白了!
  3. UIImagePickerController在ios10环境一打开就crash的问题
  4. Java虚拟机内存管理机制
  5. [linux] mysql跨服务器访问, iptables设置
  6. 获取本机IP_考虑多网卡的情况
  7. boolalpha
  8. Apache Camel
  9. 设置远程访问Oracle数据库
  10. 微软职位内部推荐-Senior Software Engineer-SDP
  11. C# Index 定义索---引具体使用
  12. Linq中的常用方法
  13. bui上手体验
  14. MCE遥控---用遥控器玩电脑
  15. android 联系数据库
  16. mysql 基础之CURD
  17. 【CNMP系列】VIM编辑器详解
  18. Java 7 Fork/Join 框架
  19. VS2015 (C/C++) 生成的程序,不能在server2008上运行
  20. Docker入门-安装(一)

热门文章

  1. windows系统查看端口占用
  2. HTML5: HTML5 Web SQL 数据库
  3. Oracle 用户概念与基本操作
  4. Linux中的特殊权限s、t、i、a
  5. centos 7 安装mysql5.7
  6. 使用php的curl函数post返回值为301永久迁移的问题。(301 Moved Permanently)
  7. 基于MFC的Media Player播放器的制作介绍
  8. python-装饰器初识,闭包
  9. 【目录】ASP.NET Core 2.1 入门教程
  10. fetch bulk collect into 进行批量、快速提取数据的方式