static静态变量和全局变量有什么区别?

wwhmyself_buaa 2009-09-07 09:44:19
在类的.h文件中用static申明的静态变量 和 在.cpp开始处申明的全局变量到底有区别吗?
...全文
72 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
muzizongheng 2009-09-07
  • 打赏
  • 举报
回复
1.生命周期一样;

2.变量范围要根据 静态变量的定义了。

呵呵 。
HuWenjin 2009-09-07
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 ljz888666555 的回复:]
有区别,如果静态变量设置为private的话,就只有类能访问,这就实现了封装。
[/Quote]

feiyangdn 2009-09-07
  • 打赏
  • 举报
回复
.h文件时可以被其他.cpp文件包含的,所以.h中定义的全局静态变量是可以在很多.cpp文件中使用。
.cpp文件一般是不做申明,如果使用全局变量,直接定义或者通过包含头文件实现,当然申明也可以,这就意味着某个.cpp(可以是自身)实现了该全局变量的定义。
你这个问题很难让人回答,问的是A的B和C的D有什么区别,还不如问有什么相同点,静态变量和全局变量是两个概念,它们的联系就是在内存中只有一个实例,使用场合不同。
quan123a 2009-09-07
  • 打赏
  • 举报
回复
没什么分别吧,都是存放在全局存储区域的数据
ljz888666555 2009-09-07
  • 打赏
  • 举报
回复
有区别,如果静态变量设置为private的话,就只有类能访问,这就实现了封装。

16,550

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧