- 博客(87)
- 资源 (21)
- 收藏
- 关注
原创 各种开源协议对比
开源协议对比 名称 √Commercial use √Modification √Distribution √Patent use √Private use !License and copyright notice !State changes !Disclose source !Network use is distribution ...
2021-10-10 15:52:24 1936
原创 现代C++单文件库(header only)
nlohmannjson :GitHub - nlohmann/json: JSON for Modern C++
2021-10-02 13:53:21 707
原创 跨平台C语言库《cosmopolitan》,一次编译到处运行
cosmopolitan库logofast portable static native textmode containers,快速可移植的静态本地文本模式容器,这是github的简介。Cosmopolitan使C成为一种构建即用即用的语言,类似于Java,只是它不需要事先安装解释器或虚拟机。Cosmo提供了与Go和Rust等高级语言相同的可移植性优势,但它并没有发明新的语言,您也不需要配置CI系统来为每个操作系统构建单独的二进制文件。Cosmopolitan关注的是通过将C与平台分离来修复..
2021-03-01 06:10:44 1268
原创 2020年github项目排行
2020年github项目排行top20 1 vue Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web. 163k 2 react A declarative, efficient, and flexible JavaS...
2020-04-29 12:47:04 880
原创 Vulkan环境搭建检测代码
VS2019搭建Vulkan开发环境,如果环境搭建成功,启动一个窗口#define GLFW_INCLUDE_VULKAN#include <GLFW/glfw3.h>#define GLM_FORCE_RADIANS#define GLM_FORCE_DEPTH_ZERO_TO_ONE#include <glm/vec4.hpp>#include <...
2019-10-30 21:55:55 615
原创 Node.js必会的模块
以下都是根据流行的node.js项目和github stars总结的CommonJS:CommonJS是一种规范,NodeJS是这种规范的实现。 chalk: nodemon:当代码改变后,自动重启。 eslint: husky:Git hooks钩子 mocha: karma: babel: webpack: vue: electron: socket.io: koa...
2019-10-19 11:24:02 333
原创 selenium selector 坑
<div class="doc frame"></div>find_element_by_xpath('//*[@class="doc"]')等是无法识别的find_element_by_xpath('//*[@class="doc frame"]') 必须要是这样的才能识别
2019-01-25 12:45:23 409 1
原创 Python selenium chrome不加载图片
chrom_opt = webdriver.ChromeOptions()prefs = { "profile.managed_default_content_settings.images": 2 }chrom_opt.add_experimental_option("prefs", prefs)browser = webdriver.Chrome(executable_path="D:...
2019-01-24 12:30:20 4470 1
原创 Elasticsearch 6.5.4 Plugins集合
下载地址链接:https://pan.baidu.com/s/1ZYkqvkKAnJ7vEoTLckPAkQ 提取码:qvb3 下载完成之后运行bin\elasticsearch-plugin install file:///C:/path/to/plugin.zip
2019-01-13 23:53:26 687
原创 VSCode配置C++项目 launch.json和tasks.json
launch.json{ // 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。 // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { ...
2019-01-12 10:06:21 5444 1
原创 Python飞机大战
图片素材:https://pan.baidu.com/s/1pMM0bebplane_sprites.pyimport randomimport pygame# 屏幕大小的常量SCREEN_RECT = pygame.Rect(0, 0, 480, 700)# 刷新的帧率FRAME_PER_SEC = 60# 创建敌机的定时器常量CREATE_ENEMY_EVENT = ...
2018-12-21 15:30:58 1561
原创 C++高级编程:第一个有用的C++程序(不带用户界面)
#include <iostream>#include <string>#include <vector>#include <stdexcept>namespace Records{ constexpr int kDefaultStartingSalary = 30000; class Employee { public: ...
2018-12-05 15:07:06 513
原创 VIM的基本操作
Vim打开文件的方式#vim 文件路径 作用:打开指定的文件#vim +数字 文件路径 作用:打开指定的文件,并且将光标移动刀指定行#vim +/关键词 文件路径 作用:打开指定的文件,并且高亮显示关键词#vim 文件路径1 文件路径2 文件路径3 ...
2018-11-12 12:25:33 264
原创 C++转换函数
class Fraction{public: Fraction(int num, int den = 1) : m_numerator(num), m_denominator(den) {} operator double() const { return (double)(m_numerator / m_denominator); }private: int m_numer...
2018-11-07 15:19:09 152
原创 C++11:lambda表达式基本语法
#include <iostream>int tmp = 0;class Test{public: int i = 0; void func() { int a = 10; //错误,[]为空,没有捕获任何变量 //auto f1 = []() {std::cout << i << std::endl; }; auto f...
2018-11-03 16:25:14 195
原创 C++11:bind和function配合使用
#include <iostream>#include <functional>using namespace std::placeholders;class Test{public: void func(int x, int y) { std::cout << x << " " << y << st
2018-11-03 14:55:09 802
原创 C++11:bind的使用
#include <iostream>#include <functional>void func(int x, int y){ std::cout << x << " " << y << std::endl;}int main(){ std::bind(func, 1, 2)();
2018-11-03 14:04:20 854
原创 C++11:function的使用
#include <iostream>#include <functional>//1、普通函数void func(){ std::cout << __func__ << std::endl;}//2、类中的静态函数class Test{public: static int test_func(int a) { st...
2018-11-03 12:46:33 3121
原创 C++11:智能指针指定释放堆空间
#include <iostream>#include <memory>class Test{public: ~Test() { std::cout << "析构" << std::endl; }};int main(){ std::unique_ptr<Test> upt = std::make_un...
2018-11-03 09:51:51 1299
原创 C++11:模板函数递归方式展开数据包
#include <iostream>#if truevoid debug(){ std::cout << "empty" << std::endl;}#elsetemplate <typename T>void debug(T argv){ std::cout << argv << std::en
2018-11-02 20:04:42 951
原创 C++11:委托构造
#include <iostream>class Test{public: Test() : Test(1, 'a') {} int geta() { return a; } char getb() { return b; }private: Test(int x, char y) : a(x), b(y) {}private: int a; char b...
2018-11-02 13:13:07 373
原创 C++11:auto的注意事项
1、定义变量时,必须初始化 auto a = 10; //正确auto b; //错误2、VS不支持函数形参auto,Qt支持void func(auto a) //VS不可以,Qt可以{}3、auto变量不能作为自定义类型的成员变量struct Test{ int a; auto b = 10; //错误,即使初始化了也不...
2018-11-02 06:56:13 1171
原创 C/C++技能及扩展
0、linux操作系统1、stl、boost2、网络库libevent、muduo、asio3、管理工具git、svn4、界面MFC、QT、WTL5、数据库mysql、sqlite、oracle6、有待补充
2018-10-14 15:38:28 173
原创 C++编码规范
1、尽量前向声明2、输入参数在前,输出参数在后 - 输入参数一般为传值和常数引用 - 输出参数或输入/输出参数一般为非常数指针3、头文件包含顺序 - 类对应的头文件 - C系统头文件 - C++系统头文件 - 其他库头文件 - 本项目内头文件4、在尽可能小的作用域中申明变量,离第一次使用的位置越近越好。类避免多次构造和析构5、类的初始...
2018-10-09 21:12:29 669
原创 一致性初始化和初值列的注意点
1、大括号初始化的时候,不允许发生窄化,例如int a = 1.1; //正确,a被窄化为1int b = { 2.2 }; //错误,b无法被窄化为22、explicit修饰的函数无法使用初值列class P{public: P(int, int) { std::cout << "P(int, int)" << std::endl; } explic...
2018-06-11 01:35:46 393
原创 std::thread对象移动
//临时对象转移,必须隐式调用t1=std::thread(some_other_function);std::thread t3;t3=std::move(t2);//显式调用t1=std::thread(some_other_function);t1=std::move(t3);//多次赋值将使程序崩溃//临时对象转移,必须隐式调用t1=std::thread(some_other_f...
2018-06-06 13:38:26 1330
原创 std::thread创建含有智能指针的线程
void process_big_object(std::unique_ptr<big_object>);std::unique_ptr<big_object> p(new big_object);p->prepare_data(42);std::thread t(process_big_object,std::move(p));
2018-06-06 11:28:42 1346
原创 std::thread类成员函数作为线程函数
第二个参数是对象地址成员函数隐藏的第一个参数是this指针class X{public: void do_lengthy_work();};X my_x;std::thread t(&X::do_lengthy_work,&my_x); // 1
2018-06-05 17:05:58 20502
原创 std::ref在并发中的使用
std::thread在创建具有引用参数的线程的时候用到了std::refvoid update_data_for_widget(widget_id w,widget_data& data); // 1void oops_again(widget_id w){ widget_data data; std::thread t(update_data_for_widget,...
2018-06-05 16:11:38 777
原创 资源获取即初始化方式(RAII,Resource Acquisition Is Initialization)
class thread_guard{ std::thread& t;public: explicit thread_guard(std::thread& t_) : t(t_) {} ~thread_guard() { if (t.joinable()) // 1 { t.join(); // 2 } } thread_guard(thre...
2018-06-05 06:25:41 343
原创 C++在构造函数中初始化的优缺点
优点:排版方便,无需担心类是否初始化。缺点:在构造函数中执行操作引起的问题有:1)构造函数中不易报告错误,不能使用异常。2)操作失败会造成对象初始化失败,引起不确定状态。3)构造函数内调用虚函数,调用不会派发到子类实现中,即使当前没有子类化实现,将来仍是隐患。4)如果有人创建该类型的全局变量(虽然违背了),构造函数将在main()之前被调用,有可能破坏构造函数中暗含的假设条件。结论:如果对象需要有...
2018-05-25 16:09:01 961
原创 Echo封装类
服务端tcpserver.hpp#ifndef _TCPSERVER_HPP_#define _TCPSERVER_HPP_#define WIN32_LEAN_AND_MEAN //避免早期定义的一些宏#include <iostream>#include <winsock2.h>#include <ws2tcpip.h>#include &l...
2018-05-20 00:12:30 176
原创 makefile示例
#obj=main.o add.o sub.o mul.otarget=app #makefile中自己维护的变量 #mkaefile中的函数的使用src=$(wildcard ./*.c)obj=$(patsubst ./%.c, ./%.o, $(src))CC = gccCPPFLAGS = -I$(target):$(obj) $(CC) $(obj) ...
2018-04-26 03:26:32 723
原创 VS2017 MFC手动绑定STATIC TEXT 设置位图
都知道VS新版本不能为控件添加成员变量,所以只能手动添加1、static text控件ID必须把STATIC修改为别的名称,否则会崩溃2、在头文件类声明中加入 成员变量 CStatic m_text; //或者 CString m_text3、在成员函数DoDataExchange中加入DDX_Control(pDX, IDC_TEXT, m_text); //IDC_TEXT可能有下划线不用管 ...
2018-04-15 01:44:15 1682 1
原创 MFC中的非模态对话框
1、CDLGShow dlg 写到.h做成员2、dlg.create 写到初始化 OnInitDialog() 保证只创建一次3、dlg.ShowWindow()
2018-04-14 18:48:07 154
原创 手动调用afxwin.h创建MFC应用
mfc.h#pragma once#ifndef MFC_H#define MFC_H#include <afxwin.h> //MFC头文件class MyApp : public CWinApp //应用程序类{public: virtual BOOL InitInstance();};class MyFrame : public CFrameWnd //窗...
2018-04-14 06:31:30 984
原创 window api 创建窗口
#include <windows.h> // 底层实现窗口的头文件//6、处理消息(窗口过程)LRESULT CALLBACK WindowProc( HWND hwnd, //消息所属的窗口句柄 UINT uMsg, //具体消息名称 WM_XXXX 消息名 WPARAM wParam, //键盘附加消息 LPARAM lParam //鼠标附加消息...
2018-04-14 03:35:03 1719
原创 装饰器模式案例
#define _CRT_SECURE_NO_WARNINGS#include <iostream>using namespace std;//一般情况下 用继承实现类的功能//抽象英雄class AbstractHero{public: virtual void ShowStatus() = 0; int mHp; int mMp; int mAt; ...
2018-04-10 17:19:35 402
深入浅出物联网操作系统 Mbed Version 0.1.pdf
2019-09-25
物联网Python开发实战 带目录书签.pdf
2019-07-13
Ionic实战 基于AngularJS的移动混合应用开发 带目录书签.pdf
2019-07-11
基于R语言的自动数据收集 网络抓取和文本挖掘实用指南 带目录书签.pdf
2019-07-11
自己动手写神经网络 带目录书签.pdf
2019-07-05
数据挖掘十大算法 带目录书签.pdf
2019-07-03
运维前线 一线运维专家的运维方法、技巧与实践 带目录书签.pdf
2019-07-03
Java面向对象编程 第2版 带目录书签.pdf
2019-07-02
高性能Docker 带目录书签.pdf
2019-07-02
Lua设计与实现 带目录书签.pdf
2019-07-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人