![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++
文章平均质量分 65
初学者清水
这个作者很懒,什么都没留下…
展开
-
回调函数(callback functions)的理解和使用
回调函数就是一个被作为参数传递的函数。在C语言中,回调函数只能使用函数指针实现,在C++、Python等更现代的编程语言中还可以使用仿函数或匿名函数实现。回调函数的使用可以大大提升编程的效率,这使得它在现代编程中被非常多地使用。同时,有一些需求必须要使用回调函数来实现。最著名的回调函数调用有C/C++标准库/cstdlib中的快速排序函数和函数中都会要求的一个与类似的参数,用于设置数据的。原创 2023-10-05 16:09:38 · 1928 阅读 · 0 评论 -
【c++】STL里的priority_queue用法总结
既然是队列那么先要包含头文件#include <queue>, 他和queue不同的就在于我们可以自定义其中数据的优先级, 让优先级高的排在队列前面,优先出队优先队列具有队列的所有特性,包括基本操作,只是在这基础上添加了内部的一个排序,它本质是一个堆实现的 和队列基本操作相同: top 访问队头元素 empty 队列是否为空 size 返回队列内元素个数 push 插入元素到队尾 (并排序) empl...原创 2022-03-16 21:16:37 · 227 阅读 · 0 评论 -
string函数中的push_back()、append()、+=
增加字符(这里说的增加是在尾巴上),函数有 +=、append()、push_back()。举例如下:s+=str;//加个字符串s+=”my name is jiayp”;//加个C字符串s+='a';//加个字符s.append(str);s.append(str,1,3);s.append(str,2,string::npos)s.append(“my name is **”);s.append(“nico”,5);s.append(5,'x');s.push_back(‘a'原创 2022-03-15 21:47:04 · 1937 阅读 · 0 评论 -
关于栈和队列
栈和队列是STL(C++标准库)里面的两个数据结构。C++标准库是有多个版本的,要知道我们使用的STL是哪个版本,才能知道对应的栈和队列的实现原理。三个最为普遍的STL版本: HP STL 。其他版本的C++ STL,一般是以HP STL为蓝本实现出来的,HP STL是C++ STL的第一个实现版本,而且开放源代码。 P.J.Plauger STL 由P.J.Plauger参照HP STL实现出来的,被Visual C++编译器所采用,不是开源的。 SGI STL 由Silic原创 2022-03-15 11:02:20 · 231 阅读 · 0 评论 -
lower_bound与upper_bound
@lower_bound与upper_boundlower_bound( )和upper_bound( )都是利用二分查找的方法在一个排好序的数组中进行查找的。在从小到大的排序数组中,lower_bound( begin,end,num):从数组的begin位置到end-1位置二分查找第一个大于或等于num的数字,找到返回该数字的地址,不存在则返回end。通过返回的地址减去起始地址begin,得到找到数字在数组中的下标。upper_bound( begin,end,num):从数组的begin位置到原创 2022-02-20 16:02:56 · 8385 阅读 · 0 评论 -
遍历字符串的三种方式:(注意新式for循环)
就以:把字符串“1234”转换为整形1234,为例来说明遍历字符串的三种方式:①常规方式(下标+operator[]) #include <iostream> #include <string> #include <vector> #include <list> using namespace std; int StrToInt1(string str) { int va...转载 2021-09-05 10:42:12 · 9228 阅读 · 0 评论 -
基于STL的演讲比赛流程管理系统(C++STL实战)
1.演讲比赛程序需求1.1比赛规则学校举行一场演讲比赛,共有12人参加。比赛共两轮,第一轮为淘汰赛,第二轮为决赛 每名选手都有对应的编号,如10001~10012 比赛方式:分组比赛,每组6个人 第一轮分为两个小组,整体按选手编号进行抽签后顺序演讲 是个评委分别给每名选手打分,去除最高分和最低分,求的平均分为本轮选手成绩 当小组演讲完后,淘汰组内排名最后的三个选手,前三名晋级,进入下一轮的比赛 第二轮为决赛,前三名胜出 每轮比赛过后需要显示出晋级选手的信息1.2程序功能开始演讲比原创 2021-08-29 21:48:23 · 1096 阅读 · 2 评论 -
C++提高编程(泛型编程与STL技术)
1.模板1.1模板的概念模板就是建立通用的模具,大大提高编程的复用性1.2函数模板C++编程思想主要有面向对象和泛型编程,泛型编程主要利用的技术就是模板 C++提供两种模板机制,函数模板和类模板1.2.1函数模板语法函数模板作用:建立一个通用函数,其函数返回值类型和形参类型可以不具体制定,用一个虚拟的类型来代表。语法:template<typename T>解释:template——声明创建模板typename——表明其后面的符号是一种数据类型,原创 2021-08-21 22:07:50 · 440 阅读 · 1 评论 -
职工管理系统(C++)(C++类项目实战)
1.管理系统需求职工管理系统可以用来管理公司内所有员工的信息公司中职工分为三类:普通员工、经理、老板,显示信息时需要显示职工编号、职工岗位、以及职责。普通员工职责:完成经理交给的任务。经理职责:完成老板交给的任务,并下发任务给员工。老板职责:管理公司所有事务管理系统需要实现的功能如下:退出管理程序:退出当前管理系统 增加职工信息:实现批量添加职工功能,将信息录入到文件中,职工信息为:职工编号、姓名、部门编号 显示职工信息:显示公司内部所有职工的信息 删除离职职工:按照编原创 2021-08-19 17:48:07 · 561 阅读 · 0 评论 -
error C4996: This function or variable may be unsafe.
一:在程序最前面加#define _CRT_SECURE_NO_DEPRECATE;二:在程序最前面加#define _CRT_SECURE_NO_WARNINGS;三:在程序最前面加#pragma warning(disable:4996);四:把scanf、scanf改为scanf_s、fopen_s,具体方法请百度; //不建议使用这个五:无需在程序最前面加那行代码,只需在新建项目时取消勾选“SDL检查”即可;六:若项目已建立好,在项目属性里关闭SDL也行;七:在工程项目设置一原创 2021-08-13 13:42:00 · 640 阅读 · 0 评论 -
遗忘随记/
1.std::strncpy(color, c, 39); //strncpy用于指定长度的字符串赋值到字符数组中原创 2021-08-13 11:39:42 · 59 阅读 · 0 评论 -
(C++Primer Plus)第十二章 类和动态内存分配笔记
12.1动态内存和类12.1.1一些分析#include <iostream>#ifndef STRNGBAD_H_#define STRNGBAD_H_class StringBad{private: char* str; int len; static int num_strings;public: StringBad(const char* s); StringBad(); ~StringBad(); frien...原创 2021-08-09 19:17:19 · 197 阅读 · 0 评论 -
重载<<无法访问私有成员
写习题的时候重载<<出现了无法访问私有成员的错误解决方法,头文件里加上#include <iostream>原创 2021-07-31 15:54:56 · 125 阅读 · 0 评论 -
函数和结构
目录1.值传递和返回结构2.地址传递结构3.按引用传递结构1.值传递和返回结构当结构比较小时,选择值传递。#include <iostream>using namespace std;const int Min_per_hr = 60;struct travel_time{ int hours; int mins;};travel_time sum(travel_time t1, travel_time t2);void show_time(t..原创 2021-07-10 22:08:04 · 76 阅读 · 0 评论 -
C++中cin、cin.get()、cin.getline()等函数用法详解
1.cin>>1.1cin>>用法1:最基本,也是最常用的用法,输入一个数字:#include <iostream>using namespace std;main (){int a,b;cin>>a>>b;cout<<a+b<<endl;}输入:2[Enter]3[Enter]输出:5注意:>> 是会过滤掉不可见字符(如 空格 回车,TAB 等)1.2cin...原创 2021-07-10 15:17:52 · 12279 阅读 · 0 评论 -
c++ Primer Plus笔记
1.使用原始的cin进行输入cin在读取时,将忽略空格和换行符。只有在用户按下回车键后,输入的内容才会被发送给程序。2.使用cin.get(char)进行补救原创 2021-07-10 13:23:30 · 545 阅读 · 0 评论 -
windows10 vs2019 cl不是内部或外部命令,也不是可运行程序解决方法:
第一步:看看你的VisualStudio\VC\Auxiliary\Build\vcvars32.bat在哪里,我的在D盘。第二步:win+R,+cmd打开命令提示符,切换到第一步找到的盘符,如图所示,“盘符:”。第三步:输入cl.大功告成!...原创 2021-07-07 21:29:44 · 2340 阅读 · 0 评论 -
C++核心编程
C++核心编程原创 2021-07-07 15:07:04 · 441 阅读 · 1 评论 -
C++primer plus编程练习参考答案
第2章 开始学习C++-1编写一个C++程序,:它显示您的姓名和地址。2.编写学个C+程序,它要求用广输入一个以long-为单位的距离,然后将它转换为码(一-long 等手:220码)。3.编写一个C行程序,它使用3个用户定义的函数~(包括maini()>,并生成下面的输出”Three-biind ,micerrhree blind:miceseerhow they . run ..seehow. they run其p:个函数要调用两次,.该函数生成前两行,另=个函数也被调用两次,并生成其原创 2021-06-13 22:19:35 · 23159 阅读 · 9 评论 -
C++基础知识实战——通讯录管理系统
1.系统需求系统需要实现的功能如下:添加联系人:向通讯录中添加新人,信息包括(姓名、性别、联系电话、家庭住址)最多记录1000人原创 2021-06-12 21:26:57 · 712 阅读 · 2 评论 -
C++学习笔记(6.7 ——6.11)——c++基础入门
1、第一个c++程序#include <iostream>using namespace std;int main(){ cout << "hello world" << endl; system("pause"); return 0;}原创 2021-06-12 18:37:58 · 270 阅读 · 0 评论