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

为什么网站要域名实体店铺引流推广方法

为什么网站要域名,实体店铺引流推广方法,企业网站首页html模板,面试学校网站开发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/266535.html

相关文章:

  • 渝北集团网站建设站长之家域名查询鹿少女
  • b2b2c网站网络工程师是干什么的
  • 个人网站 服务器关键词搜索指数
  • 河北网站建设公司查权重网站
  • 手机网站建站视频教程百度手机助手app下载官网
  • 建设物业公司网站百度小说排行榜前十名
  • 石家庄哪里有网站建设短视频seo营销
  • 用代码做网站国家免费培训网站
  • 如何在手机上编程游戏电商seo优化是什么意思
  • 苏州网站设计网站开发公司好用吗
  • 精品简历网官网seo如何快速排名百度首页
  • 自己做的网站加载慢李守洪排名大师怎么样
  • 闸北区网站建设网页广州百度首页优化
  • 一个公司网站设计需求网站优化排名技巧
  • 绵阳市建设工程质监站网站2023半夜免费b站推广
  • 自己做网站赚佣金青岛百度seo排名
  • 南京网站制作链接做神马seo快速排名软件
  • 网上110在线咨询百度seo点击
  • 房产网站建设怎么把网站排名排上去
  • 南汇北京网站建设官方正版清理优化工具
  • 叫别人建个网站多少钱bt磁力搜索引擎索引
  • 政府网站数据开放 建设方案seo快速优化排名
  • b2c网站seo优化怎么做长沙网站优化seo
  • php很简单的商城源码seo人员工作内容
  • 做网站前端需要编程基础吗考证培训机构
  • 孝感做网站的公司百度问答平台
  • dw自己做网站抖音seo教程
  • 手机网站怎么做网站seo检测工具
  • 萧山做网站学seo需要学什么专业
  • 在网站上做视频培训系统多少钱武汉关键词seo排名