pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

為什么全局變量和靜態(tài)變量被初始化為它們的默

Why are global and static variables initialized to their default values?(為什么全局變量和靜態(tài)變量被初始化為它們的默認值?)
本文介紹了為什么全局變量和靜態(tài)變量被初始化為它們的默認值?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

在 C/C++ 中,為什么將全局變量和靜態(tài)變量初始化為默認值?

In C/C++, why are globals and static variables initialized to default values?

為什么不只留下垃圾值呢?有什么特別的嗎這是什么原因?

Why not leave it with just garbage values? Are there any special reasons for this?

推薦答案

  1. 安全:單獨保留內存會泄漏其他進程或內核的信息.

  1. Security: leaving memory alone would leak information from other processes or the kernel.

效率:這些值在初始化為某些東西之前是無用的,并且在具有展開循環(huán)的塊中將它們歸零更有效.操作系統(tǒng)甚至可以在系統(tǒng)空閑時將空閑列表頁面歸零,而不是在某些客戶端或用戶等待程序啟動時.

Efficiency: the values are useless until initialized to something, and it's more efficient to zero them in a block with unrolled loops. The OS can even zero freelist pages when the system is otherwise idle, rather than when some client or user is waiting for the program to start.

可再現性:不考慮這些值會使程序行為不可重復,從而導致很難發(fā)現錯誤.

Reproducibility: leaving the values alone would make program behavior non-repeatable, making bugs really hard to find.

優(yōu)雅:如果程序可以從 0 開始,而不必使用默認初始化程序使代碼混亂,那就更干凈了.

Elegance: it's cleaner if programs can start from 0 without having to clutter the code with default initializers.

然后人們可能想知道為什么 auto 存儲類 確實 開始時是垃圾.答案有兩個:

One might then wonder why the auto storage class does start as garbage. The answer is two-fold:

  1. 它沒有,在某種意義上.每個級別的第一個堆棧幀頁面(即添加到堆棧的每個新頁面)確實收到零值.同一堆棧級別的后續(xù)函數實例看到的垃圾"或未初始化"值實際上是您自己的程序及其庫的其他方法實例留下的先前值.

  1. It doesn't, in a sense. The very first stack frame page at each level (i.e., every new page added to the stack) does receive zero values. The "garbage", or "uninitialized" values that subsequent function instances at the same stack level see are really the previous values left by other method instances of your own program and its library.

可能會有二次(或其他)運行時性能損失與將 auto(函數局部變量)初始化為任何內容相關聯(lián).一個函數可能不會使用任何或所有大數組,比如說,在任何給定的調用中,它可能被調用數千或數百萬次.靜態(tài)和全局的初始化,OTOH,只需要發(fā)生一次.

There might be a quadratic (or whatever) runtime performance penalty associated with initializing auto (function locals) to anything. A function might not use any or all of a large array, say, on any given call, and it could be invoked thousands or millions of times. The initialization of statics and globals, OTOH, only needs to happen once.

這篇關于為什么全局變量和靜態(tài)變量被初始化為它們的默認值?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯(lián)網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯(lián)系我們刪除處理,感謝您的支持!

相關文檔推薦

boost_1_60_0 .zip installation in windows(Windows 中的 boost_1_60_0 .zip 安裝)
How do I get console output in C++ with a Windows program?(如何使用 Windows 程序在 C++ 中獲得控制臺輸出?)
How do I calculate the week number given a date?(如何計算給定日期的周數?)
OpenCV with Network Cameras(帶有網絡攝像機的 OpenCV)
Export all symbols when creating a DLL(創(chuàng)建 DLL 時導出所有符號)
Getting started with OpenCV 2.4 and MinGW on Windows 7(Windows 7 上的 OpenCV 2.4 和 MinGW 入門)
主站蜘蛛池模板: 烟气换热器_GGH烟气换热器_空气预热器_高温气气换热器-青岛康景辉 | 九爱图纸|机械CAD图纸下载交流中心| 博医通医疗器械互联网供应链服务平台_博医通| 标准件-非标紧固件-不锈钢螺栓-非标不锈钢螺丝-非标螺母厂家-三角牙锁紧自攻-南京宝宇标准件有限公司 | 广州展览制作工厂—[优简]直营展台制作工厂_展会搭建资质齐全 | 彼得逊采泥器-定深式采泥器-电动土壤采样器-土壤样品风干机-常州索奥仪器制造有限公司 | 橡胶接头|可曲挠橡胶接头|橡胶软接头安装使用教程-上海松夏官方网站 | 塑料检查井_双扣聚氯乙烯增强管_双壁波纹管-河南中盈塑料制品有限公司 | 陶瓷加热器,履带式加热器-吴江市兴达电热设备厂 | 传爱自考网_传爱自学考试网 | 防爆正压柜厂家_防爆配电箱_防爆控制箱_防爆空调_-盛通防爆 | 亳州网络公司 - 亳州网站制作 - 亳州网站建设 - 亳州易天科技 | 数控走心机-双主轴走心机厂家-南京建克 | 捷码低代码平台 - 3D数字孪生_大数据可视化开发平台「免费体验」 | 盘煤仪,盘料仪,盘点仪,堆料测量仪,便携式激光盘煤仪-中科航宇(北京)自动化工程技术有限公司 | 不锈钢轴流风机,不锈钢电机-许昌光维防爆电机有限公司(原许昌光维特种电机技术有限公司) | 袋式过滤器,自清洗过滤器,保安过滤器,篮式过滤器,气体过滤器,全自动过滤器,反冲洗过滤器,管道过滤器,无锡驰业环保科技有限公司 | 二手注塑机回收_旧注塑机回收_二手注塑机买卖 - 大鑫二手注塑机 二手光谱仪维修-德国OBLF光谱仪|进口斯派克光谱仪-热电ARL光谱仪-意大利GNR光谱仪-永晖检测 | 隧道烘箱_隧道烘箱生产厂家-上海冠顶专业生产烘道设备 | 双齿辊破碎机-大型狼牙破碎机视频-对辊破碎机价格/型号图片-金联机械设备生产厂家 | 活性氧化铝球|氧化铝干燥剂|分子筛干燥剂|氢氧化铝粉-淄博同心材料有限公司 | 除甲醛公司-甲醛检测-广西雅居环境科技有限公司 | 烟气在线监测系统_烟气在线监测仪_扬尘检测仪_空气质量监测站「山东风途物联网」 | 折弯机-刨槽机-数控折弯机-数控刨槽机-数控折弯机厂家-深圳豐科机械有限公司 | 无锡网站建设-做网站-建网站-网页设计制作-阿凡达建站公司 | 超声波清洗机-超声波清洗设备定制生产厂家 - 深圳市冠博科技实业有限公司 | 网站seo优化_seo云优化_搜索引擎seo_启新网络服务中心 | 卧涛科技有限公司科技项目申报公司|高新技术企业申报|专利申请 | 风信子发稿-专注为企业提供全球新闻稿发布服务 | 顶呱呱交易平台-行业领先的公司资产交易服务平台 | 组织研磨机-高通量组织研磨仪-实验室多样品组织研磨机-东方天净 传递窗_超净|洁净工作台_高效过滤器-传递窗厂家广州梓净公司 | 全自动面膜机_面膜折叠机价格_面膜灌装机定制_高速折棉机厂家-深圳市益豪科技有限公司 | 安徽合肥格力空调专卖店_格力中央空调_格力空调总经销公司代理-皖格制冷设备 | 健康管理师报名入口,2025年健康管理师考试时间信息网-网站首页 塑料造粒机「厂家直销」-莱州鑫瑞迪机械有限公司 | 空冷器|空气冷却器|空水冷却器-无锡赛迪森机械有限公司[官网] | 深圳市万色印象美业有限公司| 压力变送器-上海武锐自动化设备有限公司 | 不锈钢复合板厂家_钛钢复合板批发_铜铝复合板供应-威海泓方金属复合材料股份有限公司 | 免联考国际MBA_在职MBA报考条件/科目/排名-MBA信息网 | ★塑料拖链__工程拖链__电缆拖链__钢制拖链 - 【上海闵彬】 | 太空舱_民宿太空舱厂家_移动房屋太空舱价格-豪品建筑 |