C++ 怎么在默认构造函数的初始化列表中初始化指针或者引用类型数据成员

原创 2015年11月17日 22:47:50
C++ primer 的习题中给了一个初始化指针成员的例子:
C/C++ code
?
1
2
3
4
5
6
7
8
struct Noname
{
    Noname():pstring(new std::string),i(0),d(0) {} 
    private:
       std::string * pstring;
       int i;
      double d;
};

引用类型可以类似:
foo() :f(*(new std::ifstream))

初始化一个引用需要已给对象已经存在,通过形参传进来,就用全局的,或者静态的,或者使用new 临时创建一个

//待补充
版权声明:本文为博主原创文章,未经博主允许不得转载。

C++必须使用【初始化列表】初始化数据成员的三种情况

类对象的构造顺序是这样的: 1.分配内存,调用构造函数时,隐式/显示的初始化各数据成员; 2.进入构造函数后在构造函数中执行一般赋值与计算。 使用初始化列表有两个原因: 原因1.必须这样做: ...
  • sinat_20265495
  • sinat_20265495
  • 2016年12月15日 15:13
  • 4576

c++构造函数成员初始化中赋值和初始化列表两种方式的区别

先总结下: 由于类成员初始化总在构造函数执行之前 1)从必要性:      a. 成员是类或结构,且构造函数带参数:成员初始化时无法调用缺省(无参)构造函数      b. 成员是常量或引用:...
  • zizi7
  • zizi7
  • 2016年08月31日 11:26
  • 6253

C++ 7.7 类的成员函数、this 指针、默认构造函数、默认初始化(总结)

简介 ================================================================================================...
  • hlsdbd1990
  • hlsdbd1990
  • 2015年05月26日 14:29
  • 778

【深入理解C++】从初始化列表和构造函数谈C++的初始化机制

深入理解C++初始化机制
  • theprinceofelf
  • theprinceofelf
  • 2014年02月27日 17:36
  • 16650

C++11中类数据成员初始化方法详解

C++98为类中提供类成员的初始化列表。 类对象的构造顺序是这样的:1.分配内存,调用构造函数时,隐式/显示的初始化各数据成员  2.进入构造函数后在构造函数中执行一般计算   1.类里面的任...
  • Bruce_0712
  • Bruce_0712
  • 2016年12月31日 21:28
  • 1410

C++初始化列表中无默认构造函数的成员的初始化

在初始化列表中,如果我们有一个类成员,它本身是一个类或者是一个结构,而且这个成员它只有一个带参数的构造函数,而没有默认构造函数,这时要对这个类成员进行初始化,就必须调用这个类成员的带参数的构造函数。A...
  • Damon_X
  • Damon_X
  • 2016年06月07日 17:48
  • 1139

c++构造函数中初始化列表的作用和机制

c++中构造函数有初始化列表,
  • zdw2619963
  • zdw2619963
  • 2014年07月22日 15:39
  • 1433

c++类中对数据成员进行初始化和赋值的区别

在c++中定义一个类 ,对于构造函数 我们经常是这么写的: class test { public: test(int n_x , int n_y) { x ...
  • zengchenacmer
  • zengchenacmer
  • 2014年05月14日 11:05
  • 2076

学习笔记:数组成员初始化于构造函数初始化列表

class C { int a[3]; public: C(int x, int y, int z) : a{x, y, z} { /* ... */ }; };在C++11出现之前,是不可能这...
  • audi2
  • audi2
  • 2015年02月08日 18:05
  • 1396

如何初始化引用类型的成员变量

在C++中声明引用类型的变量时,必须紧接着给此变量赋初值,要不这样的话会产生编译错误,局部的引用类型变量还能做到立即赋初值,那么,引用类型的成员变量如何给它赋值呢?应该在它的构造函数初始化列表中给它赋...
  • hanhf2009
  • hanhf2009
  • 2016年11月01日 19:23
  • 189
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C++ 怎么在默认构造函数的初始化列表中初始化指针或者引用类型数据成员
举报原因:
原因补充:

(最多只允许输入30个字)