博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
全部变量的析构函数问题【转】
阅读量:6757 次
发布时间:2019-06-26

本文共 578 字,大约阅读时间需要 1 分钟。

 
#include
struct t{ t(){std::cout<<"initialize\n";} ~t(){std::cout<<"Clear up\n";}}variable;int main(){ std::cout<<"Hello,word!\n";}

 这段代码主要解释了全局变量的构造与析构的过程,如果编译器不输出

initialize Hello,word! Clear up Press any key to continue

则把cout改为printf即可

 可以稍微思考一下如果把全局变量放在main函数下面怎么样呢,其实效果是一样的,也就是说编译器在编译后会进行优化,以至于你无论把全局变量放在那里都是在main函数前被存放好了,这就是有编译器来完成的

global_a全局变量的初始值,程序开始运行时,全局变量的初始值在程序中,所以需要把全局变量的数据搬移到变量实际的存储地址。所以必须有一段程序在没用到全局变量之前执行该功能,该程序一般是在跳转到Main函数之前完成的。而集成开发工具,在编译连接指令时帮助用户完成了数据段的搬移,用户感觉不到。【转】

转载于:https://www.cnblogs.com/NinaHY/archive/2011/10/30/2229470.html

你可能感兴趣的文章
(转)ROR框架介绍
查看>>
01 Cisco网络架构
查看>>
eclipse常用的快捷键 大全
查看>>
Redis 3.0 新特性,支持redis 集群
查看>>
POE系统构成
查看>>
oracle数据库安装
查看>>
django + nginx + uwsgi部署
查看>>
Linux下安装Emacs
查看>>
网络学习(二)VMware Workstation7虚拟机使用前介绍及部分实验成果展
查看>>
WIN2012案例系列3:域还原后验证失败故障详解
查看>>
2012.2.28
查看>>
你知道怎么实现MBR和GPT之间的转换么?
查看>>
操作系统
查看>>
vuejs学习之 项目打包之后的首屏加载优化
查看>>
三十、小程序解析HTML(对富文本返回数据的处理)
查看>>
利用YUM搭建DNS
查看>>
好详细啊saltsatck超全配置
查看>>
安装LAMP环境遇到Sorry, I cannot run apxs
查看>>
centos7双网卡bond失败
查看>>
JNI AES文件及字符串加解密
查看>>