初始化

✍ dations ◷ 2025-12-02 10:56:07 #计算机编程

初始化(英语:Initialization)在计算机编程领域中指为数据对象或变量赋初值的做法,如何初始化则取决于所用的程序语言以及所要初始化的对象的存储类型等属性。用于进行初始化的程序结构则称为初始化器或初始化列表。初始化和变量声明是明显有区别的,而且初始化也先于变量声明进行,但两者在实践中仍常被混淆。

初始化可以在编译时通过静态嵌入值来实现,也可以在运行时进行分配。进行初始化的代码部分称为“初始化代码”,但这部分代码可能还包含其他的一次性使用函数(例如打开文件)。将存储单元设为16进制0的做法也称作“清除”,这一般在机器代码级用异或指令的方式实现(指令的两个操作数必须为相同的变量),因为这不需要额外的内存访问。

在C/C99/C++中,初始化器是声明器的可选部分,它由一个'='以及其后的一个表达式(或含有多个以','隔开的带圆括号表达式的单一列表)所组成。后面这一列表有时也被称为“初始化(器)列表”(initializer list)或”初始化列表”(initialization list),不过initializer list也是C++中用于初始化类或结构中的元素的保留字。

一个包含初始化的声明则通常被称为定义。根据C++标准规定,定义是声明的一种;具体来说,声明只需为函数或数据对象指定类型即可,而定义则还必须为其赋初值。所以“声明和定义”的提法严格来说是不准确的,但这种说法仍被广为采用。

一个类/结构的构造函数可以在定义中于构造函数体前包含一个初始化列表,用以给类/结构的元素赋初值。例如如下程序段:

  struct int_complex {    int re, im;    int_complex() : re(0), im(0) { }  };

这里的" : re(0), im(0)"就是初始化列表。

有时“初始化列表”这个术语也用来指数组或结构初始化器中的表达式表。

在C++0x标准中也以模板的形式提供了一个更强力的初始化表的概念,即为std:initializer_list。

在程序里,数据初始化也可能在没有由明确的语法来实现的情况下进行。例如说,如果一个静态变量在没有初始化(即未指定初值)的情况下被声明,则:

相关

  • 西酞普兰西酞普兰(Citalopram)是一种很强的选择性5-羟色胺再吸收抑制剂(SSRI)型的抗抑郁药,其药物形态为氢溴酸西酞普兰(Citalopram Hydrobromide),商品名为“喜普妙”(Celexa)。在临床上常用
  • 兰博基尼兰博基尼公司(意大利语:Automobili Lamborghini S.p.A.,意大利语: 聆听)是一家集设计、工程、制造与销售于一身的超级跑车制造商,坐落于意大利圣亚加塔·波隆尼。1963年由费鲁齐
  • 同源性磷酸酶-张力蛋白1D5R, 2KYL· phosphatidylinositol-3-phosphatase activity · phosphoprotein phosphatase activity · protein serine/threonine phosphatase activity · protein t
  • Q77–Q78ICD-10 第十七章:先天畸形、变形和染色体异常,为ICD规定的各类先天畸形、变形和染色体异常。Q00-Q07 神经系统先天性畸形Q10-Q18 眼、耳、面和颈部先天性畸形Q20-Q28 循环系统
  • 绣针河绣针河是位于中国山东半岛东南部的一条河流。发源于莒南县竹芦乡三皇山东坡,东南流,下游为赣榆与日照的界河,在日照安东卫镇荻水南入南黄海,河长45公里,流域面积396平方公里,河道
  • 涂普义涂普义(法语:Jean Dupuis,1828年12月7日-1912年11月28日),又译堵布益、让·迪皮伊,法国商人、探险家。涂普义出生在圣瑞斯拉庞迪埃,曾在罗纳省塔拉尔接受教育。1858年,他作为一个商人
  • 新山一国际机场新山一国际机场(越南语:Cảng hàng không quốc tế Tân Sơn Nhất/.mw-parser-output .han-nom{font-family:"Nom Na Tong","Han-Nom Gothic","Han-Nom Ming","HAN NOM A"
  • 赛博利亚《赛伯利亚》(英语:Cyberia)是一本由道格拉斯·洛希科夫(英语:Douglas Rushkoff)在1994年出版的书,讲述了许多关于技术、毒品和亚文化的不同观点。洛希科夫采用了汤姆·沃尔夫的《
  • 第24届日本电影学院奖第24回日本电影学院奖于2001年3月9日公布并举行颁奖仪式。
  • 津川雅彦(1993年)最佳男主角奖 《墨东绮谭》 第18届(1995年)男配角奖 《集津川雅彦(日语:津川 雅彦/つがわ まさひこ ,1940年1月2日-2018年8月4日),日本演员,所属艺能事务所Gran Papa Productio