当前位置: 首页 > wzjs >正文

潍坊微信网站开发品牌推广方案怎么写

潍坊微信网站开发,品牌推广方案怎么写,现在java做网站多吗,自己在线制作logo免费超清C 快速回顾(二) 前言一、友元类二、友元函数三、深浅拷贝浅拷贝深拷贝 前言 用于快速回顾之前遗漏或者补充C知识 一、友元类 友元的优点是可以快速的轻松的访问的原本由于私有保护的字段和函数,同时这也是它的缺点这样破坏了原本封装性。 …

C++ 快速回顾(二)

  • 前言
  • 一、友元类
  • 二、友元函数
  • 三、深浅拷贝
    • 浅拷贝
    • 深拷贝


前言

用于快速回顾之前遗漏或者补充C++知识

一、友元类

友元的优点是可以快速的轻松的访问的原本由于私有保护的字段和函数,同时这也是它的缺点这样破坏了原本封装性。
如下代码是不能直接访问ClassA 中的私有和保护函数的

class ClassA
{
private:void Test01() {printf("Test01\r\n");}
protected:void Test02() {printf("Test02\r\n");}
public:void Test03() {printf("Test03\r\n");}
};class ClassB
{
public:void TestFunc(ClassA& Value){//Value.Test01();//Value.Test02();Value.Test03();}
};int main()
{ClassA A;ClassB B;B.TestFunc(A);system("pause");return 0;
}

要想访问需要加上friend class xxx

class ClassA
{friend class ClassB;
private:void Test01() {printf("Test01\r\n");}
protected:void Test02() {printf("Test02\r\n");}
public:void Test03() {printf("Test03\r\n");}
};

二、友元函数

使用全局函数调用ClassA中的私有变量a 是没有办法进行直接访问的

class ClassA
{
private:int a;
};void Test02(ClassA& Value)
{//Value.a = 100;
}int main()
{ClassA A;Test02(A);system("pause");return 0;
}

需要使用友元函数进行访问,需要注意友元函数不是某个对象的函数,不属于任何对象

class ClassA
{
public:friend void Test01(ClassA& Value);
private:int a;
};void Test01(ClassA& Value)
{Value.a = 100;
}void Test02(ClassA& Value)
{//Value.a = 100;
}int main()
{ClassA A;Test01(A);Test02(A);system("pause");return 0;
}

三、深浅拷贝

浅拷贝

只对值进行拷贝赋值
默认不写拷贝构造就是浅拷贝,只会对值进行拷贝赋值
如下对拷贝进行了复写,什么也不做只打印一个hello,一共会执行两次拷贝构造下面代码
ClassTest B = A; 会执行一次
ClassTest C(A);也会执行一次
只是对象的值一样但是实际的地址不同

class ClassTest
{
public:ClassTest(int Value1, int Value2):a(Value1),b(Value2){}ClassTest(const ClassTest& Value) {printf("Hello");}
private:int a = 0;int b = 0;
};int main()
{ClassTest A(1,2);auto a = &A;ClassTest B = A;auto b = &B;ClassTest C(A);system("pause");return 0;
}

深拷贝

面对如下案例,由于浅拷贝导致被释放了两次导致崩溃,如何解决就是使用深拷贝

class ClassPtr
{
public:ClassPtr(int Value1, int Value2):a(Value1), b(Value2){}public:int a;int b;
};class ClassTest
{
public:ClassTest(int Value1, int Value2):a(Value1),b(Value2){Ptr = new ClassPtr(100, 200);}//ClassTest(const ClassTest& Value) {//}~ClassTest(){if (Ptr){printf("~ClassTest\r\n");delete Ptr;Ptr = nullptr;}}
public:int a = 0;int b = 0;ClassPtr* Ptr;
};int main()
{{ClassTest A(1, 2);ClassTest B = A;}system("pause");return 0;
}

在这里插入图片描述
深拷贝修改如下

	ClassTest(const ClassTest& Value) {this->a = Value.a;this->b = Value.b;this->Ptr = new ClassPtr(Value.Ptr->a, Value.Ptr->b);}

http://www.dtcms.com/wzjs/166604.html

相关文章:

  • 做计算机网站有哪些功能石家庄疫情最新消息
  • 网站开发客户端网站你应该明白我的意思吗
  • 登录深圳住房和建设局网站凡科网站官网
  • 广州网站app制作公司优就业seo
  • 做游戏网站选服务器常见的网站推广方法
  • php动态网站开发 项目教程成都网站关键词推广优化
  • 广州做网站公司哪家好产品互联网营销推广
  • 建设厅网站怎样刷身份证推广网站文案
  • 在线网站建设者直销怎么做才最快成功
  • 佛山制作网站公司广东网站优化公司
  • 网站上线前准备方案做网站的软件
  • asp个人网站源码手机百度网盘登录入口
  • 网站建设与运营实践考试黑帽seo365t技术
  • 武汉一医院网站建设百度搜索热度排名
  • 南宁网站建设是什么军事新闻今日最新消息
  • wordpress创建文章网站怎么优化推广
  • 网站所有者查询seo排名优化厂家
  • 做网站必要性适合发表个人文章的平台
  • 电脑做网站电脑编程网站关键词排名分析
  • 长春作网站建设的公司网络推广公司名字
  • 西宁网站设计公司软文写作范例大全
  • wordpress 访问以下属于网站seo的内容是
  • 营销类网站免费学生网页制作成品代码
  • 现货做网站今日头条淄博新闻
  • 移动4G网站建设全网推广怎么做
  • html手机网站模板下载网络广告营销方案
  • 深圳市住房保障署官网企业seo整站优化方案
  • 在长沙做网站百度seo快速排名优化服务
  • 网站找哪些单位做实名认证自己怎么开发app软件
  • 网页设计学习内容天津百度seo排名优化软件