码迷,mamicode.com
首页 > 其他好文 > 详细

static 关键字

时间:2018-07-14 19:59:54      阅读:152      评论:0      收藏:0      [点我收藏+]

标签:style   ret   src   ati   play   code   pac   告诉   support   

阅读《C++ primer plus》可知 C++的static关键字跟Java几乎完全不同

例子,文件A内容如下

#include "stdafx.h"
#include <iostream>
#include <string>
using namespace std;
string language = "us";
void display();
int main()
{
    cout << "language in main: " << language << endl;
    display();
    cin.get();
    return 0;
}

文件B

#include "stdafx.h"
#include <iostream>
#include <string>
using namespace std;
static string language = "cn";

void display()
{
    cout << "language in support: " << language << endl;
}

输出

技术分享图片

倘若文件B里去掉static关键字,将出现重复定义。B文件里static的意思是告诉编译器,

1.该language作用域为B文件;

2.在程序运行期间持续驻留内存

3.覆盖A文件中定义的全局变量language,因此在B文件中的language都是"cn"

static 关键字

标签:style   ret   src   ati   play   code   pac   告诉   support   

原文地址:https://www.cnblogs.com/heben/p/9310777.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!