
c++
文章平均质量分 90
c++语法
丁世光
在校生,编程语言掌握C/C++、Python,熟悉常见数据结构,Linux系统指令、文件管理、进程管理、线程管理,网络套接字编程,了解网络字符串的序列化和反序列化,tcp协议和udp协议,MySQL语句
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【项目】在线OJ(负载均衡式)
本文介绍了一个基于C++的在线判题系统(Online Judge)开发项目。系统分为编译服务(compile_server)和OJ服务(oj_server)两部分,采用MVC架构设计。编译服务负责代码编译运行,采用负载均衡策略;OJ服务提供题目展示和判题功能。技术栈包括C++ STL、Boost、cpp-httplib、ctemplate、jsoncpp等库。系统实现了题目管理、代码提交、编译运行、结果返回等核心功能,支持多主机负载均衡和异常处理。开发环境为Ubuntu 22.04,使用VSCode进行开发原创 2025-05-31 20:43:45 · 1399 阅读 · 0 评论 -
C++:类型转换
本文系统介绍了类型转换的相关知识原创 2024-09-05 17:22:13 · 1292 阅读 · 0 评论 -
C++:特殊类设计
本文介绍了如何设计个别特殊的类原创 2024-08-28 19:03:14 · 815 阅读 · 0 评论 -
C++:智能指针
本文详细介绍了C++智能指针的语法原创 2024-08-24 11:32:51 · 878 阅读 · 0 评论 -
C++:异常
本文详细介绍了C++处理错误的机制,异常。原创 2024-08-23 11:34:05 · 871 阅读 · 0 评论 -
C++11:可变参数模板
本文详细介绍了可变参数模板的使用原创 2024-08-21 15:38:26 · 1129 阅读 · 0 评论 -
C++11:包装器
本文简单介绍了C++11新增的包装器原创 2024-08-20 18:23:52 · 422 阅读 · 0 评论 -
C++11:lambda表达式
本文介绍了lambda表达式的用法原创 2024-08-20 15:56:13 · 1213 阅读 · 0 评论 -
C++11:右值引用
本文详细介绍了C++11中的右值引用原创 2024-08-16 18:22:54 · 1275 阅读 · 0 评论 -
STL——bitset
本文详细介绍了STL的bitset即数据结构位图的特点原创 2024-08-12 09:51:31 · 653 阅读 · 0 评论 -
STL——map和set
要求统计个数。比如要求你统计数组中有每种水果有几个string arr[] = { "苹果", "西瓜", "苹果", "西瓜", "苹果", "苹果", "西瓜","苹果", "香蕉", "苹果", "西瓜", "香蕉", "草莓" };if (it!else这是正常的写法。原创 2024-07-07 15:41:25 · 839 阅读 · 0 评论 -
C++多态
下面程序输出结果是什么class Apublic:public:p->test();return 0;答案是:解释:子类继承了虚函数,但是没有重写,p->test是普通调用。到了test函数内部,调用func,func函数是虚函数且子类对其重写,满足多态条件1。func();this是A*还是B*?答案是A*,因为test()的第一个形参是默认的。原创 2024-04-04 10:29:53 · 1039 阅读 · 0 评论 -
C++继承
1.冗余的部分只存了一份,在所有成员的最下面(vs是这样设计的),B和C中除了存自己的成员变量之外,还存了一个指针,该指针指向的内存空间中,有一个数值,如图这里是0c,这个值是什么意思呢?继承(inheritance)机制是面向对象程序设计使代码可以复用的最重要的手段,它允许程序员在保持原有类特性的基础上进行扩展,增加功能,这样产生新的类,称派生类。Person叫做基类,或者父类。在C++设计出菱形继承后,C++的语法犹如当头一棒,因此,在后来的面向对象的语言中,比如java,没有设计多继承。原创 2024-03-24 23:46:59 · 138 阅读 · 0 评论 -
C++模板扩展
我们知道,模板一般是不指定类型的,具体是什么类型由其他部分的代码的决定。模板参数分为类型模板参数和非类型模板参数。类型形参即:出现在模板参数列表中,跟在class或者typename之后的参数类型名称。非类型形参:就是用一个常量作为类(函数)模板的一个参数,在类(函数)模板中可将该参数当成常量来使用。浮点数、类对象以及字符串是不允许作为非类型模板参数的。C++20目前似乎支持。原创 2024-03-10 20:31:33 · 438 阅读 · 0 评论 -
STL——queue
仔细想一想,仿函数本质也是调用一个函数,这个函数是operator(),但是并不是直接调用,而是用类对其封装,符合面向对象的特点,也便于模板传参。deque是一个容器,名叫双端队列,它具有list和vector的两种特性,可以理解为list&&vector,方便头插头删,尾插尾删,不方便下标访问。元素从特定容器的“尾部”弹出,其称为优先队列的顶部。但是不方便,函数指针指向一个函数,那么指向的这个函数必须由我们来传参,且语法繁琐,不推荐使用回调函数,并且指针也有很多不安全的问题,推荐使用C++的仿函数。原创 2024-03-03 21:32:05 · 945 阅读 · 0 评论 -
STL——stack
1. stack是一种专门用在具有后进先出操作的上下文环境中,其删除只能从容器的一端进行元素的插入与提取操作。2. stack是作为容器适配器被实现的,并提供一组特定的成员函数来访问其元素,将特定类作为其底层的,元素特定容器的尾部(即栈顶)被压入和弹出。3. stack的底层容器可以是任何标准的容器类模板或者一些其他特定的容器类,这些容器类应该支持以下操作:empty:判空操作back:获取尾部元素操作push_back:尾部插入元素操作pop_back:尾部删除元素操作。原创 2024-03-03 20:45:48 · 234 阅读 · 0 评论 -
STL——list
本文是模拟STL源码实现"容器list" 的底层结构STL中的list容器是 双向循环链表,且带头。原创 2024-02-26 21:15:57 · 470 阅读 · 0 评论 -
STL——vector
关于vector的概念等这篇文章不再说明,我们来聊一聊关于和vector相关的问题。原创 2024-02-02 22:59:40 · 261 阅读 · 0 评论 -
STL——string
c语言中,字符串是以‘\0’结尾的字符的集合,为了方便操作,C标准库中提供了一系列str函数,但是这些库函数与字符串是分离开的,不符合OOP思想,并且底层空间由用户自己管理,容易出现各种内存问题。原创 2023-12-13 19:47:35 · 855 阅读 · 0 评论 -
C++:类和对象
在C++中更喜欢用class来代替struct,这便引入了class。原创 2023-10-25 20:44:37 · 142 阅读 · 0 评论 -
C++基础知识
/ 命名空间中可以定义变量/函数/类型int val;//一个命名空间就定义了一个新的作用域,命名空间中的所有内容都局限于该命名空间中命名空间可以嵌套//2. 命名空间可以嵌套int a;int b;int c;int d;//3. 同一个工程中允许存在多个相同名称的命名空间,编译器最后会合成同一个命名空间中。// ps:一个工程中的test.h和上面test.cpp中两个N1会被合并成一个// test.h。原创 2023-10-19 17:14:14 · 128 阅读 · 0 评论