顺德区建设局网站做跳转链接到自己的网站

web/2025/10/3 1:40:53/文章来源:
顺德区建设局网站,做跳转链接到自己的网站,wordpress ping服务列表,网站的开发方法一、成员变量及其基本结构 1.基本结构模型 本质是一个带头双向循环列表#xff0c;将节点进行封装#xff0c;并且为了方便使用#xff0c;进行重定义 2.节点的封装定义 templateclass T//定义节点struct list_node{list_nodeT* _prev;list_nodeT…一、成员变量及其基本结构 1.基本结构模型 本质是一个带头双向循环列表将节点进行封装并且为了方便使用进行重定义 2.节点的封装定义 templateclass T//定义节点struct list_node{list_nodeT* _prev;list_nodeT* _next;T _data;list_node(const T x T()) :_prev(nullptr),_next(nullptr),_data(x){}}; 在定义节点时要注意将初始化一起进行封装完成提供默认构造函数 3.成员变量的定义 成员变量是一个哨兵位的头结点 typedef list_nodeT node;//对节点重命名方便使用 private:list_nodeT* _head; 二、迭代器重点 1.介绍 list的迭代器用原生指针无法实现需要对原生指针进行封装然后对顺序表指针的行为操作进行模拟实现是list模拟实现中最大的重点难点此时从使用者的角度上看依然能将iterator看作为指针去使用但设计者的角度上看其本质是一个指针的封装是个自定义类型。 2.对指针的基本封装 templateclass T struct __list_iterator {typedef list_nodeint node;//将节点重定义方便使用typedef __list_iteratorint self;//将类型重定义方便使用//成员变量node* _node;//初始化__list_iterator(node* n):_node(n){}//模拟实现指针操作... } 以上对节点指针进行了封装处理之后逐一实现常用的功能例如 、--、* 、 - 、 、! 等等 3.和-- 要提供迭代器和--的操作需要对运算符进行重载链表迭代器的本质上是获得下一个节点的地址--则是前一个节点的地址并且要区分前置和后置 //slef operator(){_node _node-_next;return *this;}slef operator(int)//后置{slef tmp(*this);_node _node- _next;return tmp;}//--self operator--(){_node _node-_prev;return *this;}self operator--(int){self tmp(*this);_node _node-_prev;return tmp;} 4. 和 ! 迭代器的比较本质是要比较其封装在内部的指针是否同一个 bool operator!(const self n) {return _node ! n._node; }bool operator(const self n) {return _node n._node; } 5. * 和 - 对解引用操作符的重载则需要考虑到常量迭代器的调用常量迭代器去本质是对迭代器所指向的内容进行常量化因此在这里const_iterator 和 iterator 的核心区别在于解引用后返回的值是否常量其他功能相同因此可以使用类模板去控制这两个运算符重载返回值的区别在定义部分加上两个新的模板参数即可。 templateclass T,class Ref,class Ptr strucr __list_iterator {...//定义和重命名等等Ref operator*()// Ref T迭代器 / const T常量迭代器{return _node-_data;}//对于-的重载存在特殊处理只需要返回Ptr operator-()// Ptr T*迭代器/ const T*常量迭代器{return _node-_data;} }// 迭代器定义部分在list类内定义 // typedef __list_iteratorT,T,T* iterator; // typedef __list_con_iteratorT,const T,const T*; 三、构造与析构 1.默认构造函数 默认构造需要初始化出一个哨兵位的头结点并且让节点指针指向自己为了方便其他构造函数初始化哨兵位的头结点可以单独写一个函数进行复用 void empty_init(){_head new node;_head-_next _head;_head-_prev _head;}list()//直接的初始化{empty_init();} 2.用迭代器区间去构造 迭代器区间构造需要借助函数模板任意类型的迭代器都可以将值拷贝到容器中 templateclass Iterator list(Iterator first,Iterator last) {//先得初始化容器empty_init();while(first ! last){push_back(*first); // 底层是first;} } 3.拷贝构造 拷贝构造这里选择对上面的构造函数进行复用深拷贝出一个tmp在进行交换 void swap(listT lt){std::swap(_head, lt._head);}list(const listT lt)//拷贝构造{empty_init();listT tmp(lt.begin(), lt.end());swap(tmp);} 4.赋值重载 赋值重载的底层实现也是在传参的时候调用了拷贝构造实现深拷贝后在进行交换 listT operator(listT lt)//赋值重载{swap(lt);return *this;} 5.析构函数 可以先实现clear然后复用底层就是将所有节点全部逐一释放用迭代器遍历释放即可 void clear(){iterator it begin();while (it ! end()){it erase(it);}}~list()//析构{clear();delete _head;_head nullptr;}四、增删操作 对应增删操作只需要实现insert和erase其余的头插头删等等都可以对其进行复用这里是用迭代器去实现的。 void insert(iterator pos, const T x){node* cur pos._node;node* prev cur-_prev;node* new_node new node(x);//链接new_node-_prev prev;prev-_next new_node;new_node-_next cur;cur-_prev new_node;}iterator erase(iterator pos){assert(pos ! end());node* cur pos._node;node* prev cur-_prev;node* next cur-_next;delete cur;//链接prev-_next next;next-_prev prev;return iterator(next);} 需要注意的是erase后迭代器会失效因此为了部分场景下的方便erase是有一个返回值的返回的是下一个节点的迭代器 总结 本章通过自行模拟实现了list加深了类和对象以及list的相关知识其中很重要的一个知识点就是对与list迭代器的封装和实现本篇博客整理了整个实现过程的思路方便今后复习和其他同学参考学习

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/85940.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

中山 网站关键词优化如皋建设网站

首先创建一个对象 将这个对象使用mybatis插入数据库 Student stu new Student(null, "stu", 18, null); mapper.insertEntity(stu); System.out.println(stu); 在mapper.xml文件中开启配置之后输出传入的stu对象就会有主键id回传 <!-- 插入语句示例 int ins…

企业网站seo手机优化关键词的公司

线程 一、JAVA中创建线程的两种方法&#xff1a; 1.继承java.lang.Thread类。 2.实现java.lang.Runnable接口。 3.在JAVA中Thread类实现了Runnable接口&#xff0c;并且Thread类中定义了许多与线程相关的属性与方法。 二、run():线程体&#xff0c;线程将要执行的代码。 三、线…

网站建设中倒计时源码2018一级a做爰片免费网站

前言 该系列文章用于我对一周中leetcode每日一题or其他不会的题的复盘总结。 一方面用于自己加深印象&#xff0c;另一方面也希望能对读者的算法能力有所帮助&#xff0c; 同时也希望能帮助同样坚持刷题的同学加深印象~ 该复盘对我来说比较容易的题我会复盘的比较粗糙&#…

网络广告网站网站设计流程的步骤包括

很多人的小指头都会带一个尾戒&#xff0c;不是白金就是黄金&#xff0c;大部份是简单的一环&#xff0c;没有太多装饰&#xff0c;也很少镶宝石&#xff0c;目的不在于当作饰品&#xff0c;而是保命之用。 也有人不习惯戴尾戒&#xff0c;而是把指甲留得长长的&#xff0c;长到…

这个是以前我自己做的一个网站阳江市企业网站优化

目录 一、从文件中读取数据 &#xff08;一&#xff09;读取整个文件 &#xff08;二&#xff09;文件路径 &#xff08;三&#xff09;逐行读取 &#xff08;四&#xff09;创建一个包含文件各行内容的列表 &#xff08;五&#xff09;使用文件的内容 &#xff08;六&a…

科技企业网站建设深圳网站建设公司地图

深入浅出.NET泛型编程(1) 使用泛型集合  .NET 2.0的System.Collections.Generics 命名空间包含了泛型集合定义。各种不同的集合/容器类都被"参数化"了。为使用它们,只需简单地指定参数化的类型即可。请看例2:例2.类型安全的泛型列表List&#xff1c;int&#xff1e…

做一个模板网站多少钱北京开公司的基本流程及费用

一&#xff0c;实验的流程图二&#xff0c;实验代码注&#xff1a;本代码主要来自豆丁&#xff0c;加入本人的部分修改。。//本FCFS是用不带都结点的链表完成。当然也可以用其他数据结构 #include<stdio.h>#include<stdlib.h>typedef struct PCB //定义进程控…

湖北建站管理系统信息简单的网站建设合同书

CocoaChina05-13正则表达式&#xff0c;一个十分古老而又强大的文本处理工具&#xff0c;仅仅用一段非常简短的表达式语句&#xff0c;便能够快速实现一个非常复杂的业务逻辑。熟练地掌握正则表达式的话&#xff0c;能够使你的开发效率得到极大的提升。下面是技匠整理的&#x…

县建设局 协会网站扫二维码直接进网站怎么做

系列文章目录 什么是计算机网络&#xff1f; 什么是网络协议&#xff1f; 计算机网络的结构 数据交换之电路交换 数据交换之报文交换和分组交换 分组交换 vs 电路交换 计算机网络性能&#xff08;1&#xff09;——速率、带宽、延迟 计算机网络性能&#xff08;2&#xff09;…

自己做的网站怎么上传到域名西地那非可以长期吃吗

ACM中的工作分配问题是一个典型的回溯问题&#xff0c;利用回溯思想能很准确地得到问题的解。下面就这个问题好好分析下。 问题描述&#xff1a; 设有n件工作分配给n个人。为第i个人分配工作j所需的费用为c[i][j] 。试设计一个算法&#xff0c;计算最佳工作分配方案&#xff0c…

网站建设需要提供的资料购物网站用户管理

本项目为前几天收费帮学妹做的一个项目&#xff0c;Java EE JSP项目&#xff0c;在工作环境中基本使用不到&#xff0c;但是很多学校把这个当作编程入门的项目来做&#xff0c;故分享出本项目供初学者参考。 一、项目描述 基于swing的火车站订票系统 系统有2权限&#xff1a;…

大连做企业网站哪家好做车品的网站

以下是华为数通面试考试的一道真题&#xff0c;原题如下&#xff1b; 请举例说明 stp 的 edge port 的作用,用在什么场景&#xff0c;并且使用 edge port 会碰到什么问题&#xff0c;怎么解决和防止&#xff1f; 提到边缘端口&#xff0c;我们是在NP课程的交换部分第一次接触&a…

永济市网站建设wordpress怎么添加用户中心页面

第一部分&#xff1a;电磁逆设计与伴随变量法的基础介绍 1. 电磁逆设计简介 电磁逆设计是一种寻找最优电磁结构的方法&#xff0c;以实现特定的电磁响应。与传统的电磁设计方法不同&#xff0c;逆设计方法不是从已知的结构出发&#xff0c;而是从期望的响应出发&#xff0c;反…

做网站方案自己做的网站怎么显示表格边框

如下所示成绩表,如何按行(每个人)或按列(每门课)的平均成绩? 结果: 文章目录 1. 自定义行平均函数2. 自定义列平均函数3. main()函数调用平均函数1. 自定义行平均函数 float save(float **PA,int M,int

网站建设流程域名申请怎么做垂直网站

调整网络为绑定模式&#xff0c;但启动时候会报错&#xff0c;此时执行命令 modprobe bonding 可以解决问题。 之前在磁盘方面遇到问题也是通过modprobe命令解决的&#xff0c;又遇到这个命令&#xff0c;似曾相识。于是看下该命令&#xff1a; Linux命令&#xff1a;modprobe …

网站风格总结株洲正规竞价优化推荐

假设一个模型&#xff0c;被2bit量化&#xff0c;然后一直瞎说话&#xff0c;怎么办&#xff1f;你是不是应该评估一下这个模型的效果&#xff1f; 但是&#xff0c;大模型的评估是很复杂的&#xff0c;如果说小模型的测试就像体检&#xff0c;指标明确&#xff0c;那么大模型…

精品课网站怎么做女孩子做电商运营是不是压力很大

Power Platform 系统通过允许用户执行以下三个关键操作来帮助他们推动业务发展&#xff1a;使用 Power BI 从数据中获得见解&#xff0c;通过使用 PowerApps 构建的应用程序来推动智能业务流程&#xff0c;以及使用 Power Automate 自动执行这些流程。 这些解决方案彼此配合协作…

自己做的网站如如统计访问量重庆网站供奉

html{overflow-y:scroll;}转载于:https://www.cnblogs.com/yuchav/archive/2011/10/19/2217652.html

跟网站开发公司签合同主要要点wordpress阅读次数自动增长

Spark算子 文章目录Spark算子一、转换算子coalesce函数repartition函数flatMap——flatMap变换sample——抽样zip——联结mapValues——对Value值进行变换二、行动Action算子数据运算类行动算子reduce——Reduce操作collect——收集元素countByKey——按Key值统计Key/Value型RD…

庆阳网站优化公司wamp配置多个网站

什么造就了成功的测试套件如果测量测试套件的质量&#xff1f;唯一可行的办法就是对测试套件里每一个测试进行单独的评估。你不需要一次性把它们都评估完。你可以逐步的进行评估成功的测试套件拥有以下属性&#xff1a;集成到开发周期中只针对代码库中最重要的部分它以最低的成…