C++作业2018-04-13

原创 2018年04月16日 21:30:36

一,如何将类A和类B相互引用

class A.h

#include "B.h"
class A
{
    int i;
    B b;
}

class B.h

class A;
class B
{
    int i;
    A *a;
}

同时在B.cpp要有如下形式

#include "A.h"
B::B()
{
    ……
}

方法:其中一个类的头文件中要包含另一个的头文件,另一个对对方进行前置声明



二,深拷贝的例子

#include <iostream>
using namespace std;
class C{
private:
    int a;
public:
  C(int b,char* cstr)          //构造函数
  {
   a=b;
   str=new char[b];
   strcpy(str,cstr);
  }
  C(const C& D)               //拷贝构造函数
  {
   a=D.a;
   str=new char[a];           //深拷贝
   if(str!=0)
    strcpy(str,D.str);
  }
  void Show()
  {
   cout<<str<<endl;
  }
  ~C()
  {
   delete str;
  }
private:
  int a;
  char *str;
};

int main()
{
 C A(10,"Hello!");
 C B=A;
 B.Show();
 return 0;
} 

三,如何用标记拷贝

四,多次调用构造函数主函数结束后析构释放的顺序

#include <iostream>
using namespace std;
class A
{
public:
    int a,b;
    A(int c,int d)
    {
        a=c;
		b=d;
        cout<<"Con~1"<<endl;
    }
    A(A& aa)
    {
        a=aa.a;
        cout<<"Con~2"<<endl;
    }
	~A(){cout<<"Des~"<<b<<endl;}
    void out()
    {
        cout<<a<<endl;
    }
};
int main()
{
	A aaa(10,1);
    A bbb(10,2);
	A ccc(10,3);
    return 0;
}
五,两个a的区别

一个是对象a,一个是参数a

2018-04-13

开始新的阶段好好充充电  瞄一瞄方向  铺一铺路gogo
  • qq_40890455
  • qq_40890455
  • 2018-04-13 10:02:12
  • 2

C++大作业 包含完整演示实例和源代码

  • 2011年04月23日 15:07
  • 3.26MB
  • 下载

C++期末大作业

实现一个工资管理系统 一、内容 1.题目《小型公司工资管理系统》设计 2.设计说明与要求 (1) 公司主要有5类人员:文秘、技术经理、技术员、销售员、销售经理。要求存储这些...
  • u013928645
  • u013928645
  • 2014-06-21 20:57:51
  • 1681

C++的一个作业。。。

一个作业:设计一个双向链表类,有Insert,Delete等基本操作,亦可遍历输出,要求编码规范,结构清晰。可参考STL或MTC中的类似实现。...
  • csmqq
  • csmqq
  • 2006-04-17 19:23:00
  • 902

帮同学写的C++大作业,图书管理系统

#include #include #include #include #include #include #include #include #include #include #define de...
  • zhoujinyu0713
  • zhoujinyu0713
  • 2012-12-12 23:24:41
  • 3156

华工2015级c++大作业要求

  • 2016年05月28日 16:20
  • 20KB
  • 下载

c++ 6.0 做的数据结构大作业

  • 2011年12月02日 23:54
  • 309KB
  • 下载

2013年大一上学期的C++大作业 学生信息管理系统

main.cpp #include #include #include #include "function.h" using namespace std; int main() { p...
  • u012725244
  • u012725244
  • 2015-04-11 19:47:49
  • 1618

C++第一次大作业

  • 2014年07月13日 12:55
  • 2.01MB
  • 下载

短作业优先算法c++版

 #include "stdafx.h" #include "iostream" #include "string" using namespace std; struct JOB//作...
  • cherish_CX
  • cherish_CX
  • 2016-11-21 22:49:03
  • 2079
收藏助手
不良信息举报
您举报文章:C++作业2018-04-13
举报原因:
原因补充:

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