自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 收藏
  • 关注

原创 图像基础知识

图片和图像的区别如下:1、两者的du定义不同:图片是指由图形、图像等构成的zhuan平面媒体。图片的格式很多,但总体上可以分为点阵图和矢量图。图像是人类视觉的基础,是自然景物的客观反映,是人类认识世界和人类本身的重要源泉。3、两者的呈现形式不同图片是有形式的事物,可以看到的是图画、照片、拓片等的统称。图是技术制图中的基础术语,指用点、线、符号、文字和数字等描绘事物几何特征、形态、位置及大小的一种形式。图像:“图”是物体反射或透射光的分布,“像“是人的视觉系统所接受的图在人脑中所形版的

2020-12-31 10:50:46 3369

原创 C++基础语言(四种cast转换)(指针和引用)(smart pointer四个智能指针)

一、c++中四种cast转换C++中四种类型转换是:static_cast, dynamic_cast, const_cast, reinterpret_cast1、const_cast用于将const变量转为非const2、static_cast用于各种隐式转换,比如非const转const,void*转指针等, static_cast能用于多态向上转化,如果向下转能成功但是不安全,结果未知;3、dynamic_cast用于动态类型转换。只能用于含有虚函数的类,用于类层次间的向上和

2020-12-04 10:03:18 1803

原创 c++基础语言(const与static)(new和malloc的区别)

一、关于const与static修饰的变量的区别static:修饰的变量为静态变量,只会被初始化一次,该变量存储在内存中的静态区,地址不会改变。修饰全局变量时,每个函数对其的调用都是调用其生成的副本,修饰局部变量时每次调用都是上一次调用后的值。const:修饰的变量只会被定义(可能也只能在定义的时候赋值)一次,定义之后无法对其进行赋值或修改(即不能充当左值)。static和const修饰量的最大区别就是:static的值能修改,const不能(const修饰指针的情况另分)。static-

2020-12-03 21:30:39 701

原创 pybind11

example://example.cpp#include <pybind11/pybind11.h>namespace py = pybind11;int add(int i, int j) {return i + j;}//example是包的名称,add是包中函数的名称//PYBIND11_MODULE是一个宏,m是py::module类型PYBIND11_MODULE(example, m) {m.doc() = "pybind11 example plugin"

2020-11-26 13:07:30 8063

原创 Docker-Compose指南

一. 基本思路Clion 可以通过 ssh 使用远程服务器作为开发环境,我们把 Docker Container 也当做一个远程服务器来看待就好了。此时,我们只需要解决以下几个问题:1.1 如何跑起来一个有运行环境的 Container?- 如何在 Container 里面搭建环境?(Dockerfile) 1.2 Clion 如何连接到 Container?- Container 的 IP 地址是什么?(docker-compose networks) - Con

2020-11-26 13:06:08 6619 1

原创 CMake

1.CMake:CMake是开源、跨平台的构建工具,可以让我们通过编写简单的配置文件去生成本地的Makefile,这个配置文件是独立于运行平台和编译器的,这样就不用亲自去编写Makefile了,而且配置文件可以直接拿到其它平台上使用,无需修改,非常方便。2.简单样例首先让我们从最简单的代码入手,先来体验下cmake是如何操作的。编写main.cpp,如下,然后在main.cpp相同目录下编写CMakeLists.txt,内容如下,第一行意思是表示cmake的最低版本要..

2020-11-26 13:04:43 284

原创 cmake与make的区别

GCCgcc是GNU Compiler Collection(就是GNU编译器套件),也可以简单认为是编译器,它可以编译很多种编程语言(括C、C++、Objective-C、Fortran、Java等等)。当你的程序只有一个源文件时,直接就可以用gcc命令编译它。gcc 与 g++ 分别是 gnu 的 c & c++ 编译器 gcc/g++ 在执行编译工作的时候,总共需要4步:(1)预处理,生成 .i 的文件[预处理器cpp](2)将预处理后的文件转换成汇编语言, 生成文件 .s

2020-11-26 12:43:53 546

原创 LATEX

1、latex注释LaTeX中单行注释用%% \documentclass[a4paper,cs4size,UTF8,punct,linespread=1.56]{ctexart}多行注释可以用iffalse和fi包含,如下:iffalsefi1、documentclass文档类型可由\documentclass 命令来指定。\documentclass[option]{class}clsss 指定想要的文档类型。通过options 参数可以定制文档类的属性。

2020-11-26 12:40:58 16204

原创 nvidia-docker2安装

如果你已经安装了nvidia-docker 1.0:我们需要移除它和所有现有的GPU容器docker volume ls -q -f driver=nvidia-docker | xargs -r -I{} -n1 docker ps -q -a -f volume={} | xargs -r docker rm -f sudo apt-get purge -y nvidia-docker 添加包存储库curl -s -L https://nvidia.github.io/nvidia-d

2020-11-26 12:39:32 448

原创 docker

1、安装Docker:https://docs.docker.com/engine/install/ubuntu/2、添加阿里云路径,加快下载速度:(1)注册阿里云(2)找到容器镜像服务(https://cr.console.aliyun.com/cn-qingdao/instances/mirrors)(3)将命令逐行复制粘贴进命令窗。3、构建实验环境镜像在Dockerfile文件夹下打开命令窗,执行下方命令:sudo docker build -t ..

2020-11-26 12:37:22 130

原创 virtual和abstract的区别

virtual和abstract都是用来修饰父类bai的,通du过覆盖父类的定义zhi,让子类重新定义。dao(1)virtual修饰的方法4102必须有实现(哪怕是仅仅添加一1653对大括号),而abstract修饰的方法一定不能实现。(2)virtual可以被子类重写,而abstract必须被子类重写。(3)如果类成员被abstract修饰,则该类前必须添加abstract,因为只有抽象类才可以有抽象方法。(4)无法创建abstract类的实例,只能被继承无法实例化。...

2020-09-04 21:52:41 292

原创 Ubuntu

Ubuntu make install安装如何卸载xargs rm < install_manifest.txt

2020-07-30 11:22:56 161

转载 c++编译 (.obj, .lib, .dll, .exe的关系(附:lib和DLL的区别))

转载原网址c++程序在编译后,在目标路径下会生成多个文件:Debug文件夹(*.exe,*.ilk,*.obj,*.pch,*.pdb,*.idb,*,pdb),*.cpp,*.dsp,*.ncb,*.plg*.exe:是生成的可执行文件*.ilk:当选定渐增型编译连接时,连接器自动生成ILK文件,记录连接信息*.obj:是目标文件,源程序编译后的产物*.pch:全称是PreCompiled Header,就是预先编译好的头文件*.idb:文件保存的信息,使编译器在重新编译的时候只重编译最新

2020-06-24 11:02:15 5708

原创 第七章 指针、数组与引用

#include <iostream>#include <cstdint>#include <string.h>#include <vector>int a_function(char* a ){ return 1;}int main() { char c='a'; char*p=&c; int ...

2020-04-22 16:18:44 189

原创 const总结

class GuidPrefix : public SubmessageElement {public: GuidPrefix(const octet* guidPrefix); //todo 是否需要析构函数 ~GuidPrefix(){}; size_t serialize(octet *buf, size_t max_length, bool isB...

2020-03-05 17:18:18 260

原创 全变大写

#include <algorithm>transform(connectionType_.begin(), connectionType_.end(), connectionType_.begin(), (int (*)(int))toupper);

2020-01-11 11:06:03 715

原创 读取String类型0x11,0x12赋值给char

#include <iostream>#include<vector>int ATOI(const char* str);void Trim(std::string& value);void SplitNumsByStr(const char* s, std::vector<unsigned char >& v);struct Ty...

2020-01-11 11:04:52 621 1

原创 C++随堂笔记(c_str()的用法详解)

c_str()函数返回一个指向正规C字符串的指针, 内容与本string串相同.这是为了与c语言兼容,在c语言中没有string类型,故必须通过string类对象的成员函数c_str()把string 对象转换成c中的字符串样式。注意:一定要使用strcpy()函数 等来操作方法c_str()返回的指针//标准库的string类提供了三个成员函数来从一个string得到c类型的字...

2019-09-24 10:39:44 411

原创 C++:tinyxml 语言使用

TiXmlElement *root = doc.FirstChildElement(); 获取根节点元素;TiXmlElement *NameElement = root->NextSiblingElement();查找本Element的下一个Element;QString ElementName = root->Value(); //获取元素名...

2019-09-19 09:39:40 2224

原创 C++:tinyxml的使用

1. 简介TinyXML2(最新版本)是一个开源的功能齐全的XML解析库 For C++2. 开始使用首先从Github上获得源码,是一个完整的演示工程,我们只需要其中的tinyxml2.cpp和tinyxml2.h,将这两个文件拷贝到新建的工程目录下。在下面连接中下载tinyxml。https://github.com/leethomason/tinyxml23. 写...

2019-09-18 15:26:46 7173

原创 .XML是什么文件?

XML是一种格式,XML的前身是标准通用标记语言,是自IBM从60年代就开始发展的通用标记语言。它是一种简单的数据存储语言。使用一系列简单的标记描述数据,而这些标记可以用方便的方式建立,虽然可扩展标记语言占用的空间比二进制数据要占用更多的空间,但可扩展标记语言极其简单易于掌握和使用。XML的宗旨传输数据的,而与其同属标准通用标记语言的HTML主要用于显示数据。事实上XML与其他数据表现形式...

2019-09-18 15:11:35 1792

原创 C++ 尽量不要使用using namespace std

C++标准程序库中的所有标识符都被定义于一个名为std的namespace中。namespace是指标识符的各种可见范围。命名空间用关键字namespace 来定义。命名空间是C++的一种机制,用来把单个标识符下的大量有逻辑联系的程序实体组合到一起。此标识符作为此组群的名字。如果我们使用了using namespace std,而且我们在自己的程序中定义了一个函数toupper()...

2019-08-02 14:35:36 2469

原创 C++ string类型成员函数

find()函数的功能是从std::string对象的头部顺序查找目标值,如果找到返回该目标值出现的位置,如果没有在字符串对象中找到目标对象,返回值为string::npos(==-1):(1)size_type find(charT c, size_type pos = 0) const;查找字符c在字符串中的位置,并返回该位置基于0的索引值,它是从pos开始查找...

2019-08-02 14:33:49 428

原创 Vue单元测试(Karma+Mocha+Chai)

在日常工作以及JavaScript开发中,尤其是VueJS项目,测试是非常重要的,结合官网Vue.js给出的例子,总结一下:使用mocha & karma, 且结合vue官方推荐的vue-test-utils去进行单元测试的实战。import Vue from 'vue' // 导入Vue用于生成Vue实例import Hello from '@/components/Hello'...

2019-07-23 12:42:10 191

原创 绘制接合点图元

1.问题1.1.问题描述练习要求使用Qt绘制接合点图元。要求:1.接合点处不出现如下图所示的缺口2.实现为尖角接合的效果,如图所示。1.2.问题举例2.代码练习2.1.代码框架以及环境的搭建本次练习需用用到qt库,关于qt的环境搭建以及基本用法参见外网wiki,链接:Qt安装与使用。安装完毕后,可以先切换到solution分支,将环...

2019-07-23 12:41:06 1623

原创 Vue单元测试(Karma+Mocha+Chai)

在日常工作以及JavaScript开发中,尤其是VueJS项目,测试是非常重要的,结合官网Vue.js给出的例子,总结一下:使用mocha & karma, 且结合vue官方推荐的vue-test-utils去进行单元测试的实战。import Vue from 'vue' // 导入Vue用于生成Vue实例import Hello from '@/components/Hello'...

2019-07-12 09:41:10 507

原创 Node.js 函数

在JavaScript中,一个函数可以作为另一个函数的参数。我们可以先定义一个函数,然后传递,也可以在传递参数的地方直接定义函数。Node.js中函数的使用与Javascript类似,举例来说,你可以这样做:function say(word) { console.log(word);}function execute(someFunction, value) { some...

2019-07-11 18:53:21 192

原创 Node.js模块系统

为了让Node.js的文件可以相互调用,Node.js提供了一个简单的模块系统。模块是Node.js 应用程序的基本组成部分,文件和模块是一一对应的。换言之,一个 Node.js 文件就是一个模块,这个文件可能是JavaScript 代码、JSON 或者编译过的C/C++ 扩展。创建模块在 Node.js 中,创建一个模块非常简单,如下我们创建一个main.js文件,代码如下:...

2019-07-11 18:52:37 117

原创 Node.js Stream(流)

Stream 是一个抽象接口,Node 中有很多对象实现了这个接口。例如,对http 服务器发起请求的request 对象就是一个 Stream,还有stdout(标准输出)。Node.js,Stream 有四种流类型: Readable- 可读操作。 Writable- 可写操作。 Duplex- 可读可写操作. Transform- 操作被写入数...

2019-07-10 16:44:46 111

原创 Node.js Buffer(缓冲区)

JavaScript 语言自身只有字符串数据类型,没有二进制数据类型。但在处理像TCP流或文件流时,必须使用到二进制数据。因此在 Node.js中,定义了一个 Buffer 类,该类用来创建一个专门存放二进制数据的缓存区。在 Node.js 中,Buffer 类是随 Node 内核一起发布的核心库。Buffer 库为 Node.js 带来了一种存储原始数据的方法,可以让 Node.js 处...

2019-07-10 14:09:25 283

原创 Node.js EventEmitter

Node.js EventEmitterNode.js 所有的异步 I/O 操作在完成时都会发送一个事件到事件队列。Node.js 里面的许多对象都会分发事件:一个 net.Server 对象会在每次有新连接时触发一个事件, 一个 fs.readStream 对象会在文件被打开的时候触发一个事件。 所有这些产生事件的对象都是 events.EventEmitter 的实例。EventE...

2019-07-10 12:20:04 162

原创 Node.js 事件循环

Node.js 是单进程单线程应用程序,但是因为 V8 引擎提供的异步执行回调接口,通过这些接口可以处理大量的并发,所以性能非常高。Node.js 几乎每一个 API 都是支持回调函数的。Node.js 基本上所有的事件机制都是用设计模式中观察者模式实现。Node.js 单线程类似进入一个while(true)的事件循环,直到没有事件观察者退出,每个异步事件都生成一个事件观察者,如果有...

2019-07-10 10:39:51 113

原创 Node.js 回调函数

Node.js 异步编程的直接体现就是回调。异步编程依托于回调来实现,但不能说使用了回调后程序就异步化了。回调函数在完成任务后就会被调用,Node 使用了大量的回调函数,Node 所有 API 都支持回调函数。例如,我们可以一边读取文件,一边执行其他命令,在文件读取完成后,我们将文件内容作为回调函数的参数返回。这样在执行代码时就没有阻塞或等待文件 I/O 操作。这就大大提高了 Node...

2019-07-10 10:38:27 134

原创 Node.js REPL(交互式解释器)

Node.js REPL(Read Eval Print Loop:交互式解释器) 表示一个电脑的环境,类似 Window 系统的终端或 Unix/Linux shell,我们可以在终端中输入命令,并接收系统的响应。Node 自带了交互式解释器,可以执行以下任务: 读取- 读取用户输入,解析输入了Javascript 数据结构并存储在内存中。 执行- 执行输入的数据结构 ...

2019-07-10 10:37:33 408

原创 NPM 使用介绍

NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题,常见的使用场景有以下几种:允许用户从NPM服务器下载别人编写的第三方包到本地使用。 允许用户从NPM服务器下载并安装别人编写的命令行程序到本地使用。 允许用户将自己编写的包或命令行程序上传到NPM服务器供别人使用。由于新版的nodejs已经集成了npm,所以之前npm也一并安装好了。同样可以通过输入"...

2019-07-10 10:37:02 218

原创 Node.js 创建第一个应用

如果我们使用PHP来编写后端的代码时,需要Apache 或者 Nginx 的HTTP 服务器,并配上 mod_php5 模块和php-cgi。从这个角度看,整个"接收 HTTP 请求并提供 Web 页面"的需求根本不需 要 PHP 来处理。不过对 Node.js 来说,概念完全不一样了。使用 Node.js 时,我们不仅仅 在实现一个应用,同时还实现了整个 HTTP 服务器。事实上,我们的...

2019-07-10 10:36:08 90

原创 Node.js 安装配置

Node.js 安装配置本章节我们将向大家介绍在 Windows 和 Linux 上安装 Node.js 的方法。本安装教程以 Node.js v4.4.3 LTS(长期支持版本)版本为例。Node.js 安装包及源码下载地址为:https://nodejs.org/en/download/。你可以根据不同平台系统选择你需要的 Node.js 安装包。Node.js 历史版...

2019-07-10 10:35:16 310

原创 Node.js教程

Node.js教程简单的说 Node.js 就是运行在服务端的 JavaScript。Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台。Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好。谁适合阅读本教程?如果你是一个前端程序员,你不懂得像PHP、...

2019-07-10 10:32:07 153

翻译 websocket协议

WebSocket是一种协议,允许服务器和客户端之间的持久TCP连接,以便它们可以随时交换数据。任何客户端或服务器应用程序都可以使用WebSocket,但主要是Web浏览器和Web服务器。通过WebSocket,服务器可以在没有事先客户端请求的情况下将数据传递到客户端,从而允许动态内容更新。(全双工通信:又称为双向同时通信,即通信的双方可以同时发送和接收信息的信息交互方式。)1、编写Web...

2019-07-09 17:07:47 195

转载 IntelliJ IDEA 调试教程

Debug用来追踪代码的运行流程,通常在程序运行过程中出现异常,启用Debug模式可以分析定位异常发生的位置,以及在运行过程中参数的变化。通常我们也可以启用Debug模式来跟踪代码的运行流程去学习三方框架的源码。  所以学习下如何在Intellij IDEA中使用好Debug,主要包括如下内容:    一、Debug开篇    二、基本用法&快捷键    三、变量查看 ...

2019-07-06 15:29:59 774

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除