zoukankan      html  css  js  c++  java
  • 第三篇:C++ 中的几种初始化

    前言

           阅读C++教材时,想必你听过复制初始化,直接初始化,值初始化这三个概念吧。笔者本人常将其混淆,遂在此记录下它们的具体含义以便日后查阅。

    复制初始化( copy-initialization )

           复制初始化使用 = 对变量进行初始化。

    直接初始化( direct-initialization )

           直接初始化用把初始化式子放到括号中的方式对变量进行初始化。

    值初始化( value-initialization )

           值初始化和上面两种初始C++中的几种初始化化是不同的概念上两种初始化说明的是“ 用什么样的语法格式来初始化变量 ",而值初始化不但要说明“ 用什么样的语法格式来初始化变量 "( C++中用new开辟的空间通过在要初始化的空间的类型名后跟()来启用值初始化,而库类型则自动对未初始化的变量启用值初始化 ),而且还要说明是" 用什么值来初始化变量 "。

           1. 当变量为内置类型,值初始化用0来对其初始化。

           2. 当变量为类类型,值初始化用该类的默认构造函数初始化。

           3. 当变量为类类型且没有默认构造函数时,值初始化要求程序员提供初始化值。

    说明

           值初始化通常用在初始化一段连续的内存区( 如vector容器,new一段空间 )。

  • 相关阅读:
    Linux五种IO模型
    怎样理解阻塞非阻塞与同步异步的区别?
    .NET 框架 (转载)
    数组 反转
    排序 归并排序&逆序对
    快速寻找满足条件的2个数
    数组 寻找最大的第k个数
    字符串 删除字符串开始以及末尾的空白符,并把数组中间的多个空格(如果有)符转换为1个
    排序 快速排序
    java8常用api
  • 原文地址:https://www.cnblogs.com/muchen/p/6307141.html
Copyright © 2011-2022 走看看