C++
记录C++基础的认识和心得
nameLessor
这个作者很懒,什么都没留下…
展开
-
排序算法
排序算法一、选择排序二、插入排序三、冒泡排序四、希尔排序五、快速排序六、归并排序文章目录排序算法前言一、选择排序1、算法步骤2、C/C++实现二、插入排序1、算法步骤2、C/C++实现2.读入数据总结前言本文主要介绍常见内排序算法的实现思路,后面若有进一步学习会继续更新!一、选择排序选择排序是一种简单直观的排序算法,时间复杂度为 O(n²) 。所以用到它的时候,数据规模越小越好。1、算法步骤首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置。再从剩余未排序原创 2020-09-14 22:50:06 · 91 阅读 · 0 评论 -
关于QT设置TCPserver的newConnection()信号连接不成功的解决方案
项目场景&问题描述:最近,用QT写了一个TCP服务端的初始化类,本想在类的构造函数里针对TCP监听套接字的newConnection()信号设置槽函数:connect(m_tcpServer, SIGNAL(newConnection()), this, SLOT(connectToclient()));然后不管我在mainwindow里用什么姿势定义(指针也好、直接定义对象也好)槽函数根本不care关于槽函数的一些知识:QObject类的静态成员函数connect来建立信号与槽原创 2020-09-12 14:47:04 · 5341 阅读 · 2 评论 -
C++ 相关细节知识点笔记——继承和派生
C++ 相关细节知识点笔记继承和派生继承和派生的关系继承中的构造与析构继承中的同名成员处理继承中的静态成员特性(同非静态成员函数)继承和派生继承和派生的关系继承和派生可以认为是同一问题,从不同角度看得到的两个定义:为保持已有类的特性,基于已有类构成新类的过程称为继承;在已有类的基础上,添加自己的特性而产生的新类称为派生;( 其中,被继承的类称为父类,派生出的新类被称为子类 )继承的目的: 实现设计与代码的重用,充分利用原有的类派生的目的: 当新的问题出现,原有程序无法解决,需要对原创 2020-07-12 15:56:21 · 237 阅读 · 0 评论 -
数据结构:队列部分
细节知识点:为解决单个队列假溢出问题,将其改为循环队列,在循环队列中,判断队列满常有两种方法:设置标志位重新定义队列满状态,设置队列满时保留一个元素空间;而认定头尾指针重合时为队列空;针对第二种方法:此时,队列满判别语句可以为:(rear+1)% 队列总大小 == front—— “ % 队列总大小 ” 只是为了整合front为0状态时的队列满判断;而对当前队列长度的计算公式为:( rear + 队列总大小 - front )% 队列总大小—— “ + 队列总大小 ” 只是为了整合fro原创 2020-06-30 19:07:58 · 157 阅读 · 0 评论 -
数据结构:栈部分——栈的链式存储
#include using namespace std;templateclass Linkstack{public:struct Node{Datatype data;Node* next;};Linkstack();Linkstack(const Datatype*, int);~Linkstack();bool Push(Datatype);Datatype Pop();private:Node* top;};templateLinkstack::Linkst原创 2020-06-26 17:52:50 · 132 阅读 · 0 评论 -
数据结构:栈部分——双栈共享空间
#include<iostream>using namespace std;const int MAX_CONT = 100;enum stacktype { stack_1, stack_2 };template<class Datatype>class sqDoubleStack {public: sqDoubleStack() { top1 = -1; top2 = MAX_CONT; } sqDoubleStack(const Datatype* a1原创 2020-06-26 15:46:57 · 619 阅读 · 0 评论