c++
是阿翔啊
C++程序员一枚
展开
-
C++11 打印STL结构
C++11 打印STL结构原创 2022-10-24 14:29:55 · 692 阅读 · 0 评论 -
C++ spilt
C++ spilt原创 2022-10-18 15:51:16 · 474 阅读 · 0 评论 -
C++可变参数宏
C++可变参数宏原创 2022-10-18 15:34:34 · 224 阅读 · 0 评论 -
C++11新特性
C++11新特性原创 2022-07-28 18:24:05 · 417 阅读 · 0 评论 -
红黑树实现简单map
红黑树,map,模板编程原创 2022-07-08 22:53:52 · 386 阅读 · 0 评论 -
C++简单的正则表达式知识点
C++正则表达式的基本使用原创 2022-07-06 10:41:27 · 218 阅读 · 0 评论 -
快速排序-FP模式版和快速排序 - 和 - FP模式线程强化版
快速排序-FP模式版函数化编程(functional programming)是一种编程方式,函数结果只依赖于传入函数的参数。使用相同的参数调用函数,不管多少次都会获得相同的结果。函数化编程的好处并不限于将“纯粹”作为默认方式(范型)的语言。在PF(函数化)中使用future。我们实现一个简单的快排算法快排算法思想:给一个数据列表,每次选取其中一个数为中间值,然后将数据列表中的其他数值分为2组,比他小的在前 大的在后下面代码中的是FP-模式的串行实现,需要传入列表,并且返回一个列表,与 std:原创 2022-04-19 10:02:23 · 331 阅读 · 0 评论 -
层次锁示范解决哲学家就餐问题
#include <stdio.h>#include <stdlib.h>#include <malloc.h>#include <time.h>#include <unistd.h>#include <pthread.h>#include <semaphore.h>#include <mutex>#include <stdexcept>#include <climits&g原创 2022-04-15 16:37:27 · 135 阅读 · 0 评论 -
Joining_thread简单实现
Joining_thread简单实现class joining_thread{ std::thread t;public: // 默认无参构造 joining_thread() noexcept = default; // 可变参数模板构造线程 template <typename Callable, typename... Args> explicit joining_thread(Callable &&func, Args &原创 2022-04-14 14:58:56 · 223 阅读 · 0 评论 -
C++继承vector并重载operator[] 内部类访问外部类操作
C++继承vector并重载operator[] 内部类访问外部类操作const int num = 10;template<typename Type>class myVector :public std::vector<Type>{ public: Type& operator[](const int i);}; template<typename Type>Type &myVector<Type>::oper原创 2022-03-23 08:38:11 · 1105 阅读 · 0 评论 -
使用hredis C++连接redis小demo
C++使用redis1. 安装redis首先去官网下载最新的Redis源码http://redis.io/解压之后,进入目录编译makemake testsudo make install2. 安装hredis下载hredishttps://github.com/redis/hiredis解压之后,同样的makesudo make install连接成功…代码测试新建一个临时目录创建新文件redis.h#ifndef _REDIS_H_#define _REDIS_原创 2022-01-12 18:07:57 · 575 阅读 · 0 评论 -
C/C++字符串的分割(类似split方法)
C++字符串的分割(类似splite方法)How to split a string in C/C++, Python and Java?Splitting a string by some delimiter is a very common task. For example, we have a comma-separated list of items from a file and we want individual items in an array.Almost all program原创 2021-09-01 11:37:10 · 679 阅读 · 0 评论 -
2.1.5两个排序数组的中位数
2.1.5两个排序数组的中位数分别有两个大小为m和n的排序数组a和B。查找两个已排序数组的中值。总体运行时复杂度应为O(log(m + n))分析这是一道非常经典的题。这题更通用的形式是,给定两个已经排序好的数组,找到两者所有元素中第k大的元素。O(m+n)的解法比较直观,直接merge两个数组,然后求第k大的元素。不过我们仅仅需要第k大的元素,是不需要“排序”这么昂贵的操作的。可以用一个计数器,记录当前已经找到第m大的元素了。同时我们使用两个指针pA和pB,分别指向A和B数组的第一个元素,使用原创 2021-06-09 22:14:58 · 149 阅读 · 0 评论 -
2.1.3在旋转排序数组中的搜索
2.1.3在旋转排序数组中的搜索//描述//假设一个排序数组在您事先未知的枢轴上旋转。//(即0 1 2 4 5 6 7 可能为4 5 6 7 0 1 2)。//系统为您提供了一个要搜索的目标值。//如果在数组中找到,则返回其索引,否则将返回 - 1。//您可以假定该数组中不存在任何副本#include<vector>#include<iostream>using namespace std;int find(const vector<int>&原创 2021-06-04 22:19:38 · 98 阅读 · 0 评论 -
2.1.2从排序阵列II中删除重复项
2.1.2从排序阵列II中删除重复项描述“删除重复项”的后续操作:如果最多允许重复两次怎么办?例如,给定排序数组A=[1,1,1,2,2,3],您的函数应该返回长度=5,而A现在为[1,1,2,2,3]分析加一个变量记录一下元素出现的次数即可。这题因为是已经排序的数组,所以一个变量即可解决问题。如果是没有排序的数组,则需要引入一个hashmap来记录出现的次数#include<iostream>#define SIZE 10using namespace std;void del原创 2021-06-02 11:27:35 · 94 阅读 · 0 评论 -
C++中static关键字属性
C++ static关键字不考虑类1.隐藏当我们编译多个文件的时候,所有未加static前缀的全局变量和函数都具有全局可见性。在其他文件中可以使用extern关键字在其它文件中使用到。例如:我在1.cpp/1.c中定义了一个int i变量。我们可以在main.c/main.cpp中使用extern找到我们在1.cpp中定义的i变量。2.默认初始化为0其中未初始化的全局静态变量和未初始化的全局静态变量都具有这个属性(他们都在内存区域的BSS段)比如我们可以初始化一个稀疏矩阵,就不需要使用循环遍原创 2021-03-22 18:40:17 · 266 阅读 · 0 评论 -
tcp_socket
tcp_socket/* * config.h 包含该tcp/ip套接字编程所需要的基本头文件,与server.c client.c位于同一目录下*/#include <stdio.h>#include <stdlib.h>#include <string.h>#include <sys/socket.h>#include <sys/types.h>#include <unistd.h>#include <e原创 2021-03-19 23:34:58 · 124 阅读 · 0 评论 -
udp_socket编程
udp_socket编程server.c#include <stdio.h>#include <stdlib.h>#include <sys/socket.h>#include <string.h>#include <sys/types.h>#include <netinet/ip.h>const int SERV_PORT = 6000;const int MAXLINE = 2048;void dg_echo原创 2021-03-19 22:38:38 · 113 阅读 · 0 评论 -
使用类模板构建自己的数组(2020-11-14)
类模板案例案例描述: 实现一个通用的数组类,要求如下:可以对内置数据类型以及自定义数据类型的数据进行存储将数组中的数据存储到堆区构造函数中可以传入数组的容量提供对应的拷贝构造函数以及operator=防止浅拷贝问题提供尾插法和尾删法对数组中的数据进行增加和删除可以通过下标的方式访问数组中的元素可以获取数组中当前元素个数和数组的容量后续会新增功能。。。`#pragma once#include#includeusing namespace std;templateclass原创 2020-11-14 13:26:15 · 512 阅读 · 0 评论 -
C++核心编程
C++核心编程本阶段主要针对C++面向对象编程技术做详细讲解,探讨C++中的核心和精髓。1 内存分区模型C++程序在执行时,将内存大方向划分为4个区域代码区:存放函数体的二进制代码,由操作系统进行管理的全局区:存放全局变量和静态变量以及常量栈区:由编译器自动分配释放, 存放函数的参数值,局部变量等堆区:由程序员分配和释放,若程序员不释放,程序结束时由操作系统回收内存四区意义:不同区域存放的数据,赋予不同的生命周期, 给我们更大的灵活编程1.1 程序运行前 在程序编译后,生成了ex原创 2020-11-09 21:50:56 · 530 阅读 · 0 评论 -
C++基础入门
C++基础入门1 C++初识1.1 第一个C++程序编写一个C++程序总共分为4个步骤创建项目创建文件编写代码运行程序1.1.1 创建项目 Visual Studio是我们用来编写C++程序的主要工具,我们先将它打开[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WYXCyMNh-1604929713357)(assets/1541383178746.png)][外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iaeRx原创 2020-11-09 21:49:23 · 586 阅读 · 0 评论