
C++
文章平均质量分 60
这个春节无聊,顺便学了C++,有关技术文档后续慢慢更新
SongpingWang
计算机视觉相关--程序语言相关
展开
-
CentOS 安装gcc14
配置新版本 GCC 需要成为你的主力编译器,可以编辑 Bash 的配置文件。文件,将下面这些命令添加进去。原创 2024-07-30 18:15:29 · 1308 阅读 · 0 评论 -
linux的C/C++线程池(VS2019开发)
启动测试:VS2019运行Linux程序报错:无法启动gdb。任务队列,存储需要处理的任务,由工作的线程来处理这些任务。工作的线程(任务队列任务的消费者) ,N个。管理者线程(不处理任务队列中的任务),1个。连接linux虚拟机。原创 2023-07-26 17:06:01 · 778 阅读 · 0 评论 -
模型推理预处理与后处理常用函数 C++ 实现
【代码】模型推理预处理与后处理常用函数 C++ 实现。原创 2023-03-22 13:40:35 · 1060 阅读 · 1 评论 -
DataFrame C++
Dateframe C++数据处理原创 2023-02-06 09:58:40 · 1841 阅读 · 0 评论 -
C++ web httpserver
C++ Web 开发框架原创 2022-10-29 21:13:47 · 946 阅读 · 0 评论 -
C++(十二)类的继承(重写虚函数)
实现了多边形类,派生了三角形类,实现如下:头文件:源文件Polygon.h#pragma once#ifndef _Polygon_H_#define _Polygon_H_#include <iostream>class Polygon{private: float height; float width; float area;public: Polygon(float h = 0.0, float w = 0.0); void Set_Height原创 2022-01-24 01:15:00 · 637 阅读 · 0 评论 -
C++(十二)类的继承(简单继承)
文章目录Student.hppStudent.cppmain.cpp实现了学生类,派生了小学生类,实现如下:头文件源文件(截取构造函数部分)Student.hpp#pragma once#include <string>class Student{private: std::string name; int stu_no;public: Student(const std::string& _name = "none", int _stu_no = 0)原创 2022-01-23 00:45:00 · 388 阅读 · 0 评论 -
visual assist x vs2019番茄助手
文章目录visual assist x 安装教程visual assist x 使用教程visual assist x 安装教程下载链接:https://pan.baidu.com/s/1nQjJhkCwR6OHEM8bhG9aqw 提取码:3wef下载链接:https://pan.baidu.com/s/1bqkp5yZ 密码:34p8解压双击执行:(安装时关闭visual studio 2019)直接点击install安装出现安装完成后,关闭窗口。使用Everything搜索工具搜索原创 2021-10-16 18:19:51 · 21756 阅读 · 15 评论 -
C++ 轻量级极简httpserver和httpclient
简单的 http以及websocket接口。目前较热的有 libhv,libevent,Drogon 等http服务框架。drogon文档:https://github.com/an-tao/drogon/wikilibevent文档:https://libevent.org/mongoose文档:https://cesanta.com/docs/但是传统的实现方法比如采用libcurl,asio等较为重型的框架来做有没有必要,因此,这里采用mongoose这个库来实现基本的httpserver和原创 2021-09-29 11:28:01 · 940 阅读 · 0 评论 -
C++ 二维数组指针遍历
一、将整个数组看出整体二维数组在内存中存储是线性连续的,可以计算出二维数组的偏移量,进而使用一级指针遍历二维数组#include<stdio.h>void printMatirx(int *pArray,int rows,int cols)int main(){ int array[2][3] ={{1,2,3},{4,5,6}}; int *pArray = NULL; pArray = array; printf("array[0][0] = %原创 2021-08-03 17:17:28 · 1560 阅读 · 0 评论 -
C++ STL unordered_map详解
文章目录一、哈希表二、unordered_map一、哈希表unordered_map 容器,无序容器的底层实现都采用的是哈希表存储结构,python的字典也是如此。关于哈希表(散列表)可以查看:https://zhuanlan.zhihu.com/p/45430524左边很明显是个数组,数组的每个成员包括一个指针,指向一个链表的头,当然这个链表可能为空,也可能元素很多。我们根据元素的一些特征把元素分配到不同的链表中去,也是根据这些特征,找到正确的链表,再从链表中找出这个元素。当使用无序容器存储键值原创 2020-06-18 21:01:05 · 4472 阅读 · 0 评论 -
C++ STL map 详解
文章目录一、map 容器定义关联式容器的一种,map 容器存储的都是 pair 对象,也就是用 pair 类模板创建的键值对。其中,各个键值对的键和值可以是任意数据类型,包括 C++ 基本数据类型(int、double 等)、结构体或类自定义的类型。通常情况下,map 容器中存储的各个键值对都选用 string 字符串作为键的类型。map 容器容器会自动根据各键值对的键的大小,对键值对做...原创 2020-06-18 20:58:07 · 892 阅读 · 0 评论 -
C++ STL vector详情
文章目录一、vector声明及初始化二、vector基本操作三、算法vector是表示可变大小数组的序列容器。就像数组一样,vector也采用的连续存储空间来存储元素。也就是意味着可以采用下标对vector的元素进行访问,和数组一样高效。但是又不像数组,它的大小是可以动态改变的,而且它的大小会被容器自动处理。vector使用动态分配数组来存储它的元素。当新元素插入时候,这个数组需要被重新分配大...原创 2020-03-02 20:35:19 · 248 阅读 · 0 评论 -
C++(十六)文件IO操作(读写)
C++的文件操作就是指对文件进行读写的操作,那么 IO 呢?字母 I 就是 Input 的缩写,意为输入,字母 O 就是 Output 的缩写,意为输出。所以文件的 IO 操作就是指文件的输入与输出。输入就是从磁盘上的文件中读取内容到内存中。输出就是将内存中的数据内容输出或者说写入到磁盘的文件中。2、文件的类型:文件的类型分为文本文件和二进制文件,文本文件又称为ASCII文件,它的每个字节存放...原创 2020-02-29 17:22:34 · 3258 阅读 · 0 评论 -
C++(十四)友元函数和友元类
文章目录一、友元函数在C++中,私有成员只能在类的成员函数内部访问,如果想在别处访问对象的私有成员,只能通过类提供的接口(成员函数)间接地进行。这固然能够带来数据隐藏的好处,利于将来程序的扩充,但也会增加程序书写的麻烦。比如:你自己的卧室,除了你的家人可以(参观)访问外,你可以让一些信任的好友进入你的卧室,对他们公开一些自己的隐私。一、友元函数在定义一个类的时候,可以把一些函数(包括全局函...原创 2020-02-28 07:44:46 · 575 阅读 · 0 评论 -
C++(十三)对象数组与构造函数
一、一般对象数组初始化对象数组中的元素同样需要用构造函数初始化。具体哪些元素用哪些构造函数初始化,取决于定义数组时的写法。#include<iostream>using namespace std;class CSample{public: CSample(){ //构造函数 1 cout<<"Constructor 1 Ca...原创 2020-02-27 19:32:57 · 4462 阅读 · 0 评论 -
C++(十二)类的继承与派生、运算符重载
1、为什么要进行类的继承与派生?关于这个话题其实在之前的课程中有给大家介绍过,就在《实用C++》第29课 面向对象的程序设计的第⑤个知识点:https://www.cctry.com/thread-289448-1-1.html继承与派生是C++编程过程中经常用到的一个非常重要的功能。可以复用以前开发好的功能,站在巨人的肩膀上,节省时间,提高开发效率。不用重复造轮子了。这就是C++面向对象编程...原创 2020-02-27 18:40:22 · 1150 阅读 · 0 评论 -
C++(十五)虚函数和纯虚函数(抽象类)
文章目录一、虚函数二、虚析构函数一、虚函数纯虚函数就是没有函数体的虚函数。包含纯虚函数的类就叫抽象类(不能生成独立的对象)。下面的类 A 就是一个抽象类:class A {private: int a;public: virtual void Print() = 0; //纯虚函数 void fun1() { cout << "fun1";...原创 2020-02-29 15:14:50 · 805 阅读 · 0 评论 -
C++(十一)拷贝构造函数(复制构造函数)
一、复制构造函数复制构造函数是构造函数的一种,也称拷贝构造函数,它只有一个参数,参数类型是本类的引用。复制构造函数的参数可以是 const 引用,也可以是非 const 引用。 一般使用前者,这样既能以常量对象(初始化后值不能改变的对象)作为参数,也能以非常量对象作为参数去初始化其他对象。一个类中写两个复制构造函数,一个的参数是 const 引用,另一个的参数是非 const 引用,也是可以的...原创 2020-02-26 20:48:11 · 1251 阅读 · 0 评论 -
C++(十)构造函数与析构函数
文章目录对象的初始化:之前给大家讲解过变量的初始化么类的对象呢?本身类是自从结构体发展过来的,所以之前结构体的初始化操作,类都支持可以这样在定义的时候直接初始化,也可以先定义后初始化!代码详见附件!或者说我想在对象定义完了之后马上将其初始化一下,这个初始化可以说是给类的成员都赋上一些初值,但不是具体的值,不想让变量默认都是一些杂乱无章的没有什么规律的未初始化状态的数,例如:...原创 2020-02-24 19:09:38 · 662 阅读 · 0 评论 -
C++(九)this指针
文章目录一、this指针1.1 成员函数的存储方式1.2 手动加上this一、this指针1.1 成员函数的存储方式用类实例化定义一个对象的时候,就好比是用int定义一个变量一样,系统会为该对象分配存储的内存空间。C++语言中每个对象所占用的存储空间只是该对象的数据成员所占用的存储空间,而不包括函数代码所占用的存储空间。因为针对某个类的多个对象而言,不同的只是数据成员,而函数成员来说都是一...原创 2020-02-17 20:52:18 · 867 阅读 · 0 评论 -
C++(八)类
文章目录一、类类类型的声明成员访问限定符如何决定成员变量及成员函数的访问权限C++ 在 C 语言的基础上增加了面向对象编程,C++ 支持面向对象程序设计。类是 C++ 的核心特性,通常被称为用户定义的类型。面向对象的重要特性:抽象:类就是对象的抽象,而对象就是类的具体表现形式。封装和数据隐藏:对象中的函数名就是对象的对外接口,函数的内部实现别人没必要知道。比如手机对象,你打电话只需要拨号...原创 2020-02-17 20:30:47 · 740 阅读 · 0 评论 -
C++(七)指针
文章目录一、地址与指针定义指针一、地址与指针日常生活中我们会问一个人住在哪,比如小明家住在XX省XX市XX县XX镇XX村,这就是其详细住址,也就是地址。那么在程序中定义的任何变量实际上都是存在内存中的,那么他们的具体位置是多少呢,这里就涉及到了地址。就是这个变量真正存在的位置。下面我们用代码举个例子,例如定义一个字符:char ch = ‘a’;我们用vs的监视窗口来看下字符 ch 的...原创 2020-02-16 21:18:31 · 1687 阅读 · 0 评论 -
C++(六)复合类型(结构体,共用体,枚举)
文章目录一、结构体1.1 结构体类型的声明1.2 结构体类型变量的定义及初始化1.3 结构体类型变量成员的访问1.3 结构体类型和数组配合使用二、共用体三、枚举3.1 枚举类型的声明:四、指针一、结构体C/C++语言本身提供了很多基本数据类型,例如:int、float、char、double、long int 等供我们使用。但是程序编写的过程中问题往往比较复杂,基本的数据类型有时候不能满足我们...原创 2020-02-14 20:36:18 · 825 阅读 · 0 评论 -
C++(五)复合类型(数组、字符数组、字符串)
文章目录一、数组二、字符数组一、数组通俗的说数组就是同类型的一群数据,定义一个数组,就是定义一群数据。例如,学生成绩管理系统中,你不可能来一个定义一个学生的姓名、学生的学号,学生的成绩。这样既费事,还要为每个变量命名。所以在C语言中提出了数组这个东西。之前说过定义一个数组,就是定义一群数据。所以大概的定义如下:int stu_num[50];这样一定义之后,就一下子定义了50个int类型...原创 2020-02-12 20:26:52 · 2505 阅读 · 4 评论 -
C++(四)函数、变量
文章目录一、函数函数的声明与定义:函数的几种调用方式:二、变量局部变量与全局变量一、函数函数(function),翻译过来就是功能的意思。也就是说一个函数肯定会实现或者完成某个功能。函数名命名时最好起一个能表达该函数功能的名字。每个程序都必须至少有一个函数,C++程序主入口函数 main(只能写成这样)。随着程序的功能越来越复杂,那么就不可能把所有的代码都写到main函数中,这时候就可以...原创 2020-02-12 20:21:30 · 1294 阅读 · 0 评论 -
C++(三)逻辑控制语句(if、while、switch、for)
文章目录if 语句switch语句while 循环语句for循环及break和continueif 语句关于if语句这里不在多讲,说白了就是:如果。。。就。。。否则。。。为了防止语义上出现不必要的错误出现,即使if下只有一条语句,也应该放到花括号 {} 中。int apple_weight = 0;cin >> apple_weight;if (apple_weight ...原创 2020-02-11 19:46:12 · 2857 阅读 · 1 评论 -
C++(二)输入与输出
文章目录一、输入与输出二、cinC++标准输入输出流的控制符一、输入与输出C语言的输入与输出:getchar:字符输入函数putchar:字符输出函数scanf:输入printf:输出其中,scanf 和 printf 跟 C++ 中的 cin 和 cout 功能很类似,例如用 printf 输出多个值:int x = 2;int y = 3;printf("%d + %d =...原创 2020-02-11 19:10:15 · 1969 阅读 · 0 评论 -
C++(一)入门
一、编程工具选择操作系统:Microsoft Windows 10 Home x64编译工具:Microsoft Visual Studio 2015 社区中文版(其实 VS2010、VS2012、VS2013、VS2015、VS2017 都可以的。)下载地址:https://msdn.itellyou.cn/(这个网站包含了微软的几乎所有正版软件,你也可以直接搜索官网下载。)Visual...原创 2020-02-10 18:19:36 · 861 阅读 · 0 评论 -
C++ 泛型(模板与容器)
文章目录一、泛型的基本思想:一、泛型的基本思想:泛型编程(Generic Programming)是一种语言机制,通过它可以实现一个标准的容器库。像类一样,泛型也是一种抽象数据类型,但是泛型不属于面向对象,它是面向对象的补充和发展。在面向对象编程中,当算法与数据类型有关时,面向对象在对算法的抽象描述方面存在一些缺陷。泛型在C++中的主要实现为模板函数和模板类。通常使用普通的函数实现一个与...原创 2020-02-09 20:17:45 · 5030 阅读 · 1 评论