• 如果你的成员是POD类型的,那么list initialization和constructor initialization没有任何区别
#include<iostream>
using namespace std; class A
{
int a;
double b;
A() :a(0), b(0.0)//结构体初始化
{ }
A(int a_in, double b_in) :a(a_in), b(b_in)//结构体初始化
{}
~A() {} };
class B
{
int a;
double b;
B()//列表初始化
{
a = 0;
b = 0.0;
}
B(int a_in, double b_in)//列表初始化
{
a = a_in;
b = b_in;
}
~B() {} };
int main()
{
system("pause");
}
  •   但是成员变量的类型是非POD类型,比如自定义类型,那么list inlitialization的代码就会变成
#include<iostream>
using namespace std; struct A
{ int a;
A() { ; }
A(int a_in) :a(a_in)
{ }
};
struct B
{
double b;
B() {}
B(double b_in):b(b_in)
{ }
};
class D
{
A a1;
B b1;
//D(int a, double b) :a1(a), b1(b)//结构体初始化,这个也是正确的
//{}
D(int a, double b)//列表初始化
{
a1 = a;//这里如果不给A B写无参构造函数会出错
b1 = b;
}
}; int main()
{
system("pause");
}

  但是这里仍旧不知道列表初始化和结构体初始化的区别以及运算时间的长短

关于POD和非POD类型中,list initialization和constructor initialization(未解决)的更多相关文章

  1. BootStrap中关于input-group的问题(未解决)

    ****************************************2016年1月6日 23:08******************************* 本来想实现的如下功能: 但 ...

  2. 二元谓词中添加const的问题(未解决)

    #include <iostream> using namespace std; #include"set" #include"algorithm" ...

  3. pod(八):pod的调度——将 Pod 指派给节点

    目录 一.系统环境 二.前言 三.pod的调度 3.1 pod的调度概述 3.2 pod自动调度 3.2.1 创建3个主机端口为80的pod 3.3 使用nodeName 字段指定pod运行在哪个节点 ...

  4. 十三、Pod的资源控制器类型

    Pod 的资源控制器类型 一.Pod 的资源控制器类型 什么是控制器呢?简单来说,控制器就好比是影视剧里面的剧本,演员会根据剧本所写的内容来针对不同的角色进行演绎,而我们的控制器就好比是剧本,Kube ...

  5. 在javaScript中把非数值类型的数据自动转换为数值类型的两种方式

    一.使用Number()函数. 二.使用parseInt()/parseFloat()函数. 详情: 一.使用Number()函数将非数值类型的数据自动的转化为数组类型 Number()函数可以将任何 ...

  6. 未经处理的异常在 System.Data.dll 中发生。其它信息:在应使用条件的上下文(在 &#39;***&#39; 附近)中指定了非布尔类型的表达式。

    机房收费系统中,有些人在联合查询这个模块用的是存储过程.我先尝试着在数据库中建立了一个视图.然后在UI层做个推断并生成查询条件strCondition. 在机房收费系统的"联合查询" ...

  7. SpringMVC中使用@Value给非String类型注入值

    String类型的@Value注入方式 String类型的直接可以使用 @Value("陈婉清") private String name; 非String类型的@Value注入方 ...

  8. 使用 pod install 还是 pod update ?

    翻译自:https://guides.cocoapods.org/using/pod-install-vs-update.html 介绍: 许多人开始使用CocodPods的时候认为pod insta ...

  9. pod install 和 pod update的区别

    pod install 和 pod update的区别 pod install(下载并安装pod) 1,当pod file文件中有“增加pod,删除pod,修改pod”的操作之后使用. 2,pod i ...

随机推荐

  1. oracle 之 定时任务,存储过程和游标等语法案例

    --定时任务 declare job20 number; begin sys.dbms_job.submit(job20,'test1;',sysdate,'sysdate+1'); end; --存 ...

  2. LOJ#2452. 「POI2010」反对称 Antisymmetry

    题目描述 对于一个 \(0/1\) 字符串,如果将这个字符串 \(0\) 和 \(1\) 取反后,再将整个串反过来和原串一样,就称作「反对称」字符串.比如 \(00001111\) 和 \(01010 ...

  3. (zhuan) awesome-object-proposals

      awesome-object-proposals  A curated list of object proposals resources for object detection. This ...

  4. 什么情况下用断言?assert

    可以再预计正常情况下不会到达的任何位置上放置断言,断言可以用于验证传递给私有方法的参数.不俺的参数过,断言不应该用于验证传递给公有方法的参数,因为不管是否启用了断言,公有方法都必须检查其参数.不过,既 ...

  5. snakemake使用笔记

    snakemake是一个用来编写任务流程的工具,用python编写的,因此其执行的流程脚本也比较通俗易懂,易于理解. 一.从一个简单的例子开始 1.安装snakemake 安装snakemake的方法 ...

  6. 理解 Redis(7) - Set 值

    unordered collection of unique strings.set值是唯一的字符串的无序集合, 把握住两个特点: 唯一, 无序. 清空所有的数据, 并清理显示界面: 127.0.0. ...

  7. python 排序 由大到小

    import functools class Solution: # @param {integer[]} nums # @return {string} def largestNumber(self ...

  8. python redis 操作

    1.String 操作 redis中的String在在内存中按照一个name对应一个value来存储 set() #在Redis中设置值,默认不存在则创建,存在则修改 r.set('name', 'z ...

  9. 实体entity、JavaBean、Model、POJO、domain的区别

    实体entity.JavaBean.Model.POJO.domain的区别Java Bean.POJO. Entity. VO , 其实都是java 对象,只不过用于不同场合罢了. 按照 Sprin ...

  10. label和span的区别

    label标签主要用于绑定一个表单元素,当点击label标签的时候,被绑定的表单元素就会获得输入焦点. <div class="form-group col-lg-12"&g ...