-
从C语言过渡到C++之引用(别名)
所属栏目:[经验] 日期:2020-12-31 热度:62
今天要讲的是C++中我最喜欢的一个用法――引用,也叫别名。 引用就是给一个变量领取一个变量名,方便我们间接地使用这个变量。我们可以给一个变量创建N个引用,这N + 1个变量共享了同一块内存区域。 1. 声明引用 创建引用的格式如下: 数据类型 引用名 = 原[详细]
-
cmake 学习笔记
所属栏目:[经验] 日期:2020-12-30 热度:93
最近接触到一些工程上的代码,都是用cmake来编译的,每次看着CMakeLists.txt 就各种懵逼,决定从0 开始学习 1 set set(var hello)message(${var}) 输出 hello 其实并不是单单输出hello,还有很多其他信息,会生成很多文件 files 2 CMAKE_C(XX)_FLAGS 变量 CM[详细]
-
c++ 面向对象的类设计
所属栏目:[经验] 日期:2020-12-30 热度:73
类的设计在于用恰到好处的信息来完整表达一个职责清晰的概念,恰到好处的意思是不多也不少,少了,就概念就不完整;多了,就显得冗余,累赘,当然特例下,允许少许的重复,但是,这里必须要有很好的理由。冗余往往就意味着包含了过多的信息,概念的表达不够[详细]
-
数据结构 红黑树的详解
所属栏目:[经验] 日期:2020-12-30 热度:135
数据结构 红黑树的详解 红黑树是具有下列着色性质的二叉查找树: 1.每一个节点或者着红色,或者着黑色。 2.根是黑色的。 3.如果一个节点是红色的,那么它的子节点必须是黑色。 4.从一个节点到一个NULL指针的每一条路径必须包含相同数目的黑色节点。 下面是一[详细]
-
C语言数据结构树之后序遍历的实现
所属栏目:[经验] 日期:2020-12-30 热度:70
后续遍历的实现: 数据结构树中的后续遍历,这里提供简单实例,代码中有注释,大家参考下! 看下实现效果: 题目及分析 给定树的先序遍历和中序遍历,求后续遍历 输入 abdec dbeac 输出 debca 三、实现代码: #include iostream#include stringusing namespa[详细]
-
自己模拟写C++中的String类型实例讲解
所属栏目:[经验] 日期:2020-12-30 热度:159
下面是模拟实现字符串的相关功能,它包括一下功能: String(const char * s);//利用字符串来初始化对象 String(); //默认构造函数 String(const String //复制构造函数,利用String类型来初始化对象 ~String(); //析构函数 int length(); //返回String类型中[详细]
-
C语言 数据结构链表的实例(十九种操作)
所属栏目:[经验] 日期:2020-12-30 热度:56
C语言 数据结构链表的实例(十九种操作) #include stdio.h#include string.h#include stdlib.h/*************************************************************************************//* 第一版博主 原文地址 http://www.cnblogs.com/renyuan/archive/2[详细]
-
C语言中编写可变参数函数
所属栏目:[经验] 日期:2020-12-30 热度:83
通过stdarg.h头文件为函数提供了定义可变参数列表的能力。声明一个可变参数的函数类似: void f1(int n,...); 其中n表示参数列表个数,而用省略号来表示未知参数列表。stdarg.h中提供了一个va_list类型,用于存放参数。一个大概的使用过程类似: void f1(int[详细]
-
Qt实现FTP的上传和下载的实例代码
所属栏目:[经验] 日期:2020-12-30 热度:104
为了方便网络编程,Qt 提供了 Network 模块。该模块包含了许多类,本文介绍了Qt实现FTP的上传和下载,分享给大家 本来想简单抄抄书,随便手写个Ftp客户端的,结果发现教材上的是基于Qt4的QFtp类库,而在Qt5中取消了这一个类库(同时也取消了QHttp等的类),[详细]
-
C语言实现“幸运数”的实例详解
所属栏目:[经验] 日期:2020-12-30 热度:59
C语言实现“幸运数”的实例详解 1、题目: 标题:幸运数 幸运数是波兰数学家乌拉姆命名的。它采用与生成素数类似的“筛法”生成。 首先从1开始写出自然数1,2,3,4,5,6,…. 1 就是第一个幸运数。 我们从2这个数开始。把所有序号能被2整除的项删除,变为: 1 _[详细]
-
浅谈Qt中使用CEF的几个要点(Windows下)
所属栏目:[经验] 日期:2020-12-30 热度:101
最近项目中要在Qt中使用CEF(Chromium Embedded Framework),在这里总结下其中的几个要点。 下载合适的CEF版本 关于CEF的简介我们这里就不做介绍了,下载CEF可以有2种选择: 1、源码:强烈不建议下载源代码并编译构建(学习代码除外),下载源码需要你FQ、[详细]
-
深入理解Qt中各种消息框对话框的使用
所属栏目:[经验] 日期:2020-12-30 热度:52
最近在学习Qt框架,今天学习了一下消息框的使用, 现整理出来以作记录。 在程序运行时,经常需要提示用户一些信息,比如警告啊,提示啊,建议啊之类的东西。这些东西基本上是通过消息框与用户进行交互的,Qt中主要是用QMessageBox类来加以实现的。 消息框一[详细]
-
Windows 环境下使用 Qt 连接 MySQL
所属栏目:[经验] 日期:2020-12-30 热度:77
如果应用只需要连接远程数据库,那么本地不需要安装 MySQL,只需要找到 MySQL 提供的 libmysql.dll 和libmysqld.dll 两个动态连接库,把他们加入到 Qt安装目录5.9mingw53_32bin;默认 Qt 自带已编译好的 qsqlmysql.dll 和 qsqlmysqld.dll (文件路径为 Q[详细]
-
c语言基于stdarg.h的可变参数函数的用法
所属栏目:[经验] 日期:2020-12-30 热度:136
C语言编程中有时会遇到一些参数个数可变的函数,本文详细讲解了可变参数函数的实现原理,分享给大家 在开始学习C语言的函数的时候,我们就知道函数的参数个数应该是在函数声明的时候就指定的,这一点我们没有任何疑问。但是不知道大家有没有注意到我们的print[详细]
-
C/C++ MD5算法的实现代码
所属栏目:[经验] 日期:2020-12-30 热度:188
在逆向程序的时候,经常会碰到加密的算法的问题,前面分析UC的逆向工程师的面试题2的时候,发现使用了MD5的加密算法(MD5算法是自己实现的,不是使用的算法库函数)。尤其是在逆向分析网络协议的时候,一般的程序使用的加密算法都是使用的库函数提供的算法,[详细]
-
C++ 开发之实现操作符重载的实例
所属栏目:[经验] 日期:2020-12-30 热度:189
C++操作符重载 实现效果图: 实例代码: Matrix.h #pragma once #include "vector" #include "iostream" #define rep(i,n) for(int i=1;i=n;i++) //宏定义for循环,精简代码 using namespace std; class Matrix { public: //基本构造函数 Matrix(int Row=0,i[详细]
-
C语言实现静态顺序表的实例详解
所属栏目:[经验] 日期:2020-12-26 热度:106
C语言实现静态顺序表的实例详解 线性表 定义一张顺序表也就是在内存中开辟一段连续的存储空间,并给它一个名字进行标识。只有定义了一个顺序表,才能利用该顺序表存放数据元素,也才能对该顺序表进行各种操作。 接下来看看静态的顺序表,直接上代码: SeqLis[详细]
-
C/C++ 实现递归和栈逆序字符串的实例
所属栏目:[经验] 日期:2020-12-26 热度:114
C/C++ 实现递归和栈逆序字符串的实例 递归函数调用模型 逆序方法 void revers(char *buf){ char *p = buf; if (p == NULL) { return; } //递归结束条件 if (*p == ' ') { return; } //递归调用 revers(p + 1); //在字符串的结尾追加n个字符 strncat(buf_g,p[详细]
-
C++ STL入门教程(1) vector向量容器使用方法
所属栏目:[经验] 日期:2020-12-26 热度:90
一、简介 Vectors 包含着一系列连续存储的元素,其行为和数组类似。 访问Vector中的任意元素或从末尾添加元素都可以在O(1)内完成,而查找特定值的元素所处的位置或是在Vector中插入元素则是O(N)。 二、完整程序代码 /*请务必运行以下程序后对照阅读*/ #inclu[详细]
-
C语言实现时区转换函数的实例
所属栏目:[经验] 日期:2020-12-26 热度:71
C语言实现时区转换函数的实例 时区转换函数 功能: 把时区1的时间转换成时区2的时间 参数: arg1 -- 输入时间 arg2 -- 时区1(也是arg1当前时间所在的时区) arg3 -- 时区2(要转换的时区的时间) 要求: 参数arg1类型可为timestamp 24个时区(由1-24表示)[详细]
-
C语言实现单链表实现方法
所属栏目:[经验] 日期:2020-12-26 热度:174
C语言实现单链表实现方法 链表和我们之前实现过的顺序表一样,都是简单的数据结构,链表分为单向链表、双向链表、循环链表。而单向链表又分为两种实现方法,一种为带头节点的单链表,一种为不带头节点的单链表。我们来具体看看不带头节点的单链表的实现 单链[详细]
-
C++ 数据结构之对称矩阵及稀疏矩阵的压缩存储
所属栏目:[经验] 日期:2020-12-26 热度:184
对称矩阵及稀疏矩阵的压缩存储 1.稀疏矩阵 对于那些零元素数目远远多于非零元素数目,并且非零元素的分布没有规律的矩阵称为稀疏矩阵(sparse)。 人们无法给出稀疏矩阵的确切定义,一般都只是凭个人的直觉来理解这个概念,即矩阵中非零元素的个数远远小于矩[详细]
-
计算机二级如何一次性通过?给NCRE焦躁心情降温!
所属栏目:[经验] 日期:2020-12-26 热度:103
距离我们计算机二级考试也就还有两个多月的时间了,可是一年当中最热的日子已经开始了!等考二级取证之路困难重重,虽说心静自然凉,但这备考大业未见成效,你有没有一种心静不下来的感觉啊 不要着急下面就为大家分享计算机二级备考小妙招: 从自身入手,要[详细]
-
C++实现的O(n)复杂度内查找第K大数算法示例
所属栏目:[经验] 日期:2020-12-26 热度:149
本篇章节讲解C++实现的O(n)复杂度内查找第K大数算法。供大家参考研究具体如下: 题目: 是在一组数组(数组元素为整数,可正可负可为0)中查找乘积最大的三个数,最后输出最大乘积。 从题目我们知道只有两种结果存在: 1)三个最大的正整数相乘;[详细]
-
C/C++ 浅拷贝和深拷贝的实例详解
所属栏目:[经验] 日期:2020-12-26 热度:55
C/C++ 浅拷贝和深拷贝的实例详解 深拷贝是指拷贝对象的具体内容,而内存地址是自主分配的,拷贝结束之后,两个对象虽然存的值是相同的,但是内存地址不一样,两个对象也互不影响,互不干涉。 浅拷贝就是对内存地址的复制,让目标对象指针和源对象指向同一片[详细]