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

wordpress建站实例创造网站的软件

wordpress建站实例,创造网站的软件,wordpress内容页显示tag,网站设计大作业代码负责释放对象之前已经分配的资源#xff0c;比如堆上的内存。在执行深拷贝之前#xff0c;你需要确保对象不再引用之前的资源#xff0c;以避免内存泄漏。通过删除先前的资源#xff0c;你可以确保在进行深拷贝之前#xff0c;已经释放了之前的资源#xff0c;从而避…代码负责释放对象之前已经分配的资源比如堆上的内存。在执行深拷贝之前你需要确保对象不再引用之前的资源以避免内存泄漏。通过删除先前的资源你可以确保在进行深拷贝之前已经释放了之前的资源从而避免了资源泄漏。 当一个对象拥有动态分配的资源比如堆上的内存并且你希望将另一个对象的内容赋值给它时你需要确保在赋值之前释放已经分配的资源以避免内存泄漏。下面是一个具体的示例 假设你有一个自定义的类 IntArray它包含一个整数指针 array用于存储动态分配的整数数组以及一个整数 nElements表示数组中的元素数量。你的类如下所示 class IntArray { private:int *array;int nElements;public:// 构造函数IntArray(int size) {nElements size;array new int[size];}// 析构函数~IntArray() {delete[] array;}// 赋值运算符重载IntArray operator(const IntArray src) {if (this ! src) { // 防止无效的自我赋值delete[] array; // 释放现有资源deepCopy(src); // 执行深拷贝}return *this;}// 深拷贝函数void deepCopy(const IntArray src) {nElements src.nElements;array new int[nElements];for (int i 0; i nElements; i) {array[i] src.array[i];}}// 其他方法和成员变量// ... };现在考虑以下情况你有两个 IntArray 对象 array1 和 array2 IntArray array1(5); // 创建 array1分配了一个包含5个整数的数组 IntArray array2(3); // 创建 array2分配了一个包含3个整数的数组array1 array2; // 赋值操作在这个赋值操作之前array1 已经拥有了一个包含5个整数的数组而 array2 拥有一个包含3个整数的数组。为了执行赋值操作你需要确保在将 array2 的内容复制到 array1 之前释放了 array1 之前分配的资源以避免内存泄漏。 这就是为什么在赋值运算符重载函数中存在 delete[] array; 这行代码的原因。它的目的是在执行深拷贝之前释放 array1 的资源然后再为 array1 分配新的资源确保 array1 与 array2 是独立的不会导致内存泄漏。 在这段代码中src、src、this 和 array 分别指代以下内容 src这是函数的参数表示传递给赋值运算符重载函数的右操作数即源对象。src 是一个 const IntArray 类型的引用表示它是一个 IntArray 类的对象的引用该对象将用于赋值操作。 src这是 src 的地址表示源对象 src 在内存中的位置。 运算符用于获取变量或对象的地址。在这里它用于比较 this 和 src 是否相同以检查是否发生了自我赋值。 this这是指向当前对象的指针即调用赋值运算符重载函数的对象的指针。在这个上下文中this 表示正在执行赋值操作的目标对象即接收赋值的对象。 array这是当前对象 this 中的成员变量表示整数指针用于存储动态分配的整数数组。delete[] array; 行代码用于释放当前对象 this 中的数组资源。 那为什么this对象可以跟地址比较 this 指针是一个指向当前对象的指针在 C 中它是一个隐式参数传递给成员函数以表示调用该函数的对象。因此this 指针可以用于在成员函数内部访问对象的成员变量和方法。 在这段代码中this 指针用于表示当前对象而 src 用于表示传递给赋值运算符重载函数的源对象 src 的地址。通过比较 this 和 src代码检查是否发生了自我赋值即是否试图将对象赋值给它自己。 如果 this 和 src 是相同的这意味着赋值操作试图将对象赋值给它自己这是一个无效的操作可能会导致问题因此需要避免。所以通过比较 this 和 src可以防止自我赋值情况的发生。 那为啥不是this和src比较或者this→array和src比较 在 C 中this 是一个指向当前对象的指针src 是一个表示传递给赋值运算符重载函数的源对象的引用。它们具有不同的类型和语义因此不能直接进行比较。具体来说 1. this 是一个指向当前对象的指针类型为 IntArray*。它用于在成员函数内部访问对象的成员变量和方法。 2. src 是一个表示传递给赋值运算符重载函数的源对象的引用类型为 const IntArray。它是一个对象的别名用于访问源对象的数据。 这两者之间的比较是没有意义的因为它们代表了不同的概念和数据类型。在自我赋值检查中我们关心的是比较当前对象和源对象是否是同一个对象。为了执行这个比较我们使用 this 指针和 src因为它们分别表示当前对象和源对象在内存中的位置地址从而允许我们进行地址比较。 要比较对象的成员变量你需要使用成员访问运算符 . 来访问对象的成员变量例如 this-array 和 src.array。然而这不会执行自我赋值检查因为它只是比较成员变量的值而不是对象的身份。在自我赋值检查中我们关心的是对象的身份即对象是否相同因此需要比较它们的地址。
http://www.hkea.cn/news/14410308/

相关文章:

  • 各地平台网站app手机电视网站设计方案
  • 宽带技术网网站论坛申请网站备案前置审批
  • 网站主动服务方案国外网站国内备案
  • 电子商务网站建设课设网站模板桂林象鼻山景区官网
  • 公司网站建设计入明细科目网络营销站点页面设计原则
  • 提供秦皇岛网站建设哪里有网页设计版心常用尺寸
  • 网站建设运营思路中文商城html网站模板
  • 第一模板网站上的模板怎么下载怎么建造网站
  • 怎样提高网站打开速度慢点播视频网站怎么建设
  • 广州市网站建站做图片视频的网站有哪些问题吗
  • wordpress 文章标题列表石家庄seo网络优化的公司
  • 美容视频视频网站建设点击即玩的小游戏网站
  • 贵州网络公司网站建设设计师国外网站
  • 网站建设案例模板下载选做旅游网站的课题分析
  • 关于做网站的外语文献网站怎么做 凡科
  • 怎样设计一个网站平台易思腾网站建设
  • 网站资源做缓存东莞网站建设公司电话
  • safari网站入口自己制作网站的步骤
  • 做网站的分析报告案例婚纱摄影网站管理系统
  • 济南网站建设价格海南房产信息网
  • 网站开发流行语言论坛打赏网站开发
  • 营销型网站建设eyouc昆山网站建设官网
  • 建网页网站html5企业网站建设
  • lamp网站开发旅游网络营销策划方案
  • 成都网站设计与制作深圳罗湖网站制作公司哪家好
  • 网站设计比例楚雄网站开发rewlkj
  • icp备案网站名称是什么意思网站建设合同范文
  • 玉林住房和城乡建设部网站中国建设教育协会网站查询
  • 学院门户网站建设自评荔浦火车站建设在哪里
  • 计算机网站模板移动互联网开发技术电子书