码迷,mamicode.com
首页 > 编程语言 > 详细

C++ 中使用引用类型的成员变量

时间:2016-08-25 21:54:16      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:c++ 引用 成员变量

    因为引用类型的成员变量定义时需要赋值,不然其所在的类初始化时有编译错误,所以一直以为不能使用引用类型的变量作为成员变量。但在探讨C++的前置声明知识时,发现是可以定义引用类型的成员变量的。

    如下讲解一下如何使用引用类型的成员变量。

//AAA.h
#pragma once

class BBB;

class AAA
{
public:
    AAA(BBB &x);
    ~AAA();
    
private:
    BBB &b;
};

#include "AAA.h"
AAA::AAA(BBB &x) : b(x)
{
}

AAA::~AAA(void)
{
}




//BBB.h
#pragma once

class AAA;

class BBB
{
public:
    BBB(void);
    ~BBB(void);
    void NewAAA();

private:
    AAA *a;
};


//BBB.cpp
#include "BBB.h"
#include "AAA.h"

BBB::BBB()
{
    NewAAA();
}

BBB::~BBB(void)
{
}

void BBB::NewAAA()
{
 BBB b;
 a = new AAA( b );
}


//main.cpp
#include <iostream>

int main()
{
    return 0;
}

    如上程序所示,在AAA的头文件中定义了引用类型的成员变量,在AAA的构造函数初始化列表中对其进行了初始化,达到了“使用引用类型的成员变量”的目的。

    注意,引用类型的成员变量的初始化必须在构造函数的初始化列表中进行初始化。




本文出自 “开源,分享,进步” 博客,请务必保留此出处http://weiyuqingcheng.blog.51cto.com/4865776/1842384

C++ 中使用引用类型的成员变量

标签:c++ 引用 成员变量

原文地址:http://weiyuqingcheng.blog.51cto.com/4865776/1842384

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!