王桂林 C++基础与提高 练习题——类实现单向链表的封装
源码:
fhnClassList.h
#ifndef _FHN_CLASS_LIST_
#define _FHN_CLASS_LIST_#pragma once
struct Data
{int a;int b;
};struct Node
{Data d;struct Node* next;
};class fhnClassList
{
public:fhnClassList(void);void initList();void insertList(Data data);Node * searchList(Data data);void travleList();void destoryList();~fhnClassList(void);private:Node * head;
};
#endif
fhnClassList.cpp
#include "fhnClassList.h"
#include <iostream>
using namespace std;fhnClassList::fhnClassList(void)
{
}fhnClassList::~fhnClassList(void)
{
}
void fhnClassList::initList()
{head = new Node;head->next = nullptr;
}
void fhnClassList::insertList(Data data)
{Node *cur = new Node;cur->d = data;cur->next = head->next;head->next = cur;}
Node * fhnClassList::searchList(Data data)
{Node *t = head->next;while(t){if(t->d.a == data.a && t->d.b == data.b){return t;break;}}return nullptr;
}
void fhnClassList::travleList()
{Node * subHead = head->next;while(subHead){cout<<subHead->d.a<<endl;cout<<subHead->d.b<<endl;subHead = subHead->next;}
}
void fhnClassList::destoryList()
{Node *t = head;head = head->next;delete t;
}
main.cpp
#include <iostream>
#include <string>
#include "fhnClassList.h"
using namespace std;int main()
{fhnClassList ls;ls.initList();for(int i=0;i<10;i++){Data tmp;tmp.a=i;tmp.b=i;ls.insertList(tmp);}ls.travleList();ls.travleList();ls.destoryList();return 0;}
王桂林 C++基础与提高 练习题——类实现单向链表的封装相关推荐
- 王桂林 C++基础与提高 练习题—— 函数做默认参数
在王桂林老师给的样例上稍微做了调整. 王老师给的样例是: typedef int(*Comp)(int, int); void popSort(int *p, int len, Comp com=as ...
- 王桂林 C++基础与提高 练习题——求两点间的距离
定义一个Point类,其属性包含点的坐标,提供计算两点间距离的方法. #include <iostream> #include <math.h> using namespace ...
- 王桂林 C++基础与提高 练习题——格式时钟输出(实时的,精确到秒)
这里直接使用了 localtime 函数获取 tm 时间然后做显示.代码如下: #include <iostream> #include <windows.h> #includ ...
- 王桂林 C++基础与提高 练习题——string数组
题目:读取字符数组 char buf[100] = char buf[100] = "xxxxx:yyyyy:zzzzz:aaaa:bbbb"; 按 : 分解到string数组中去 ...
- 视频学习:王桂林 C++ 基础与提高 - day 1
链接:https://pan.xunlei.com/s/VMQBShMBHEpAaLe-OM-DG6bzA1 提取码:xe7e
- 华为工程师,带你实战C++(2016版)-王桂林-专题视频课程
华为工程师,带你实战C++(2016版)-52396人已学习 课程介绍 这是一套全面而系统的C++学习: 1,C++对C的全面提高(类型增强,函数重载,默认参数,引用,new/dele ...
- 2你懂C语言,我不信(C深度提高)视频教程-王桂林-专题视频课程
<2>你懂C语言,我不信(C深度提高)视频教程-790人已学习 课程介绍 C语言视频培训教程,本课程属于C语言编码技能提高篇,帮助学习过C语言的人,更上一个台阶.课程内容涉 ...
- 4数据结构与算法(C/C++实现)视频教程-王桂林-专题视频课程
<4>数据结构与算法(C/C++实现)视频教程-1008人已学习 课程介绍 C/C++实现数据结构与算法视频培训课程全面介绍计算机行业,基本的数据结构与算法,既有理论的深度 ...
- 1C语言 从放弃到入门-王桂林-专题视频课程
<1>C语言 从放弃到入门-1052人已学习 课程介绍 C语言 从放弃到入门 课程收益 所有对C语言有入门恐惧的人. 讲师介绍 王桂林 更多讲师课程 ...
最新文章
- shell中和||的使用方法
- php中的header头,PHP中常用的header头部定义
- rdd数据存内存 数据量_spark系列:spark core 数据交互技术点(数据模型)
- 50个Android开发技巧(09 避免用EditText对日期进行验证)
- 淘宝双十一用5个“潜规则”冲击1500亿
- openfeign 负载均衡_再谈openfeign,聊聊它的源代码
- Could not run curl-config
- 改善Java EE生产支持技能的8种方法
- android webdav 播放器,Android WebDAV
- 关于ultrawebgrid的列的样式
- 故障解决:三块300GSAS硬盘 一块硬盘状态灯为红色
- 自媒体免费素材,国旗高清无水印素材,PNG格式,直接引用即可
- SpringBoot中的Aop优先使用的是JDK动态代理还是Cglib
- 博图PLC仿真时,CPU一直出于STOP状态,无法启动
- Electron常见问题 30 - 深度填坑之阴影问题
- 使用unity编写简单的弹幕游戏【ten seconds】
- 嵌入式开发基本环境搭建---ubuntu
- kdj指标主要看哪个值_终于有人把KDJ指标讲通透了,简单实用,建议收藏
- 用Python做数据分析之数据处理及数据提取
- 程序人生:扒一扒程序员为什么总在加班?拿生命敲代码?