- 博客(226)
- 资源 (35)
- 收藏
- 关注
原创 C++加载动态链接库(cmake生成,隐式链接,显示链接)
C++程序在运行时有两种方式加载动态连接库:隐式链接和显式链接。加载动态库文件就是将动态库中的代码逻辑映射到用户进程地址空间,就在程序执行的时候进行函数调用。隐式链接隐式链接是在程序开始执行时就将动态库文件加载到应用程序当中,需要在程序构建编译阶段就指定好,这种方式比较常用unix的动态库只有.so文件,使用时需要配置工程:包含库头文件包含库.so文件地址链接库名称(多种方式)...
2019-02-22 11:48:40 6528
原创 C++使用libcurl实现ftp客户端(上传、下载、文件列表、进度、断点续传)
在此之前需要先搭建ftp服务器(windows自带,linux可以用vsftpd)以linux环境为例,用cmake编译出libcurl.so动态库(静态库也行)用libcurl C++库写了个ftp上传限制的简单示例,带进度和断点续传功能。
2018-11-08 22:21:37 23464 4
原创 Qt开发:列表QTableView列添加Button
在列表里面添加任何其他组件,比如Button,一般都需要继承delegate,然后继承后重绘,但是这样过于复杂,这里有一个简单的方法,理论上可以扩展到任何组件以单个window里面添加到表格为例代码mainwindow.h#ifndef MAINWINDOW_H#define MAINWINDOW_H#include <QMainWindow>class MainWi...
2018-10-26 09:53:13 22163 7
原创 Qt开发:跨窗口信号槽通信
多窗口通信,如果是窗口类对象之间互相包含,则可以直接开放public接口调用,不过,很多情况下主窗口和子窗口之间要做到异步消息通信,就必须依赖到跨窗口的信号槽,以下是一个简单的示例。母窗口mainwindow.h#ifndef MAINWINDOW_H#define MAINWINDOW_H#include <QMainWindow>#include <QLabel...
2018-10-25 21:56:33 8536 3
原创 C++实现utf8和gbk编码字符串互相转换
C++实现utf8和gbk编码字符串互相转换,可跨平台使用main.cpp#include <iostream>#include <stdio.h>#include <stdlib.h>#include <locale.h>#include &am
2018-10-20 19:31:19 41024 16
原创 C++共享内存实现(windows和linux)
共享内存是一种进程间通信的方式,速度比较快 基本原理:以页面为单位,将一个普通文件映射到内存中,达到共享内存和节约内存的目的,通常在需要对文件进行频繁读写时使用,这样用内存读写取代I/O读写,以获得较高的性能windows和linux都提供了原生的系统级的C++接口,可以将文件映射到内存windows中使用CreateFileMappinglinux使用mmap代码示例这里...
2018-08-27 16:13:13 18035 3
原创 TA-Lib C++金融技术分析库使用初体验
TA-Lib是一个用于金融技术分析的C++库,可以用来计算MACD,动量,移动均线等常用指标等 本文对TA-Lib做了一个简单的使用初体验源码下载地址:ta-lib 注意这里面有多个源码包,选择msvc这个版本(windows和linux编译都用这个版本的源码)下载后源码目录根目录ta-lib和ta-lib/c 编译使用TA-Lib需要先编译出对应链接库,支...
2018-08-08 19:00:25 9599 5
原创 QuantLIb C++金融工程库初体验
QuantLib是一个有名的金融计算的C++库,能方便地用于计算许多金融模型和公式,包括简单的折现、年金、VAR甚至BS期权定价等。本文对quantlib做了一个简单的使用初体验源码下载quantlib依赖于boost库,所以需要下载这两个项目的源码quantlib地址:quantlibboost地址:boost 本文使用的版本是quantlib-1.13和boost-...
2018-07-25 00:02:49 9553
原创 cocos2dx实例开发之经典三消
三消是消除游戏里面的经典玩法,看起来虽然简单,其实里面的逻辑一点都不简单,通过一个基础的范例来对经典三消游戏一探究竟ps:所有素材都来自于互联网,仅供学习和参考预览工程结构环境win10vs2015cocos2dx3.16代码目录游戏架构主要有以下场景欢迎场景游戏场景(三消界面)步骤欢迎场景只是用于转场,为了简便,这个dem...
2018-07-18 11:40:01 2502 2
转载 C++17新特性
【原文】https://zh.wikipedia.org/wiki/C++17简介C++17(或非正式名称,C++1z)是ISO/IEC 14882标准的最新版本的C++编程语言的名称。C++17标准在2017年3月达到国际标准草案(DIS)阶段。这一DIS得到了一致的认可,只有编辑者的评论,最终标准在2017年12月出版。新特性C++17引入了许多新的特性。以下列表可能不完整。...
2018-07-16 17:21:51 2735
原创 mxnet使用mxboard实现网络和训练过程可视化
mxnet作为一个强大的机器学习工具,一直缺乏像tensorflow一样的可视化工具,dmlc社区最近将tensorflow的tensorboard部分代码抽出来做成了一个适配mxnet的记录工具mxboard,使得mxnet里面打印出来的log,可以在tensorboard里面实现可视化mxnet自带可视化在这之前,可以先看看mxnet之前的网络可视化方式,mxnet内部集成了gra...
2018-06-19 17:15:19 6416 1
原创 windows编译和使用tesseract(C++ api)
tesseract是一个基于C++编写的开源OCR(光学字符识别)库本文简单介绍一下windows系统中编译和使用tesseract以及调用该库的C++ api进行开发环境为win10+vs2015源码下载tesseract的编译有诸多依赖,tesseract依赖于leptonica,而leptonica又依赖于png,tiff,jpeg等基础库,所以需要下载这些依赖的源码,并且依次编译考虑到某些...
2018-06-02 23:23:28 15358 14
原创 linux安装和使用tesseract(C++ api)
tesseract是一个基于C++编写的开源OCR(光学字符识别)库,对于做机器学习中NLP领域有很重要的作用,某些时候,为了方便可以不需要从头搭建模型训练OCR,那么采用开源框架就是一个便捷的做法本文简单介绍一下linux系统中安装和使用tesseract以及调用该库的C++ api进行开发此处用的linux发行版是ubuntu 14.04,其他环境同理下载理论上是可以对于所有依赖都下载源码编译...
2018-06-01 14:05:42 4242 3
原创 windows下编译深度学习框架mxnet并使用C++训练模型
大多数情况下,mxnet都使用python接口进行深度学习程序的编写,方便快捷,但是有的时候,需要把机器学习训练和识别的程序部署到生产版的程序中去,比如游戏或者云服务,此时采用C++等高级语言去编写才能提高性能,本文介绍了如何在windows系统下从源码编译mxnet,安装python版的包,并使用C++原生接口创建示例程序。目标编译出libmxnet.lib和libmxnet...
2018-05-29 23:37:17 11990 37
翻译 electron使用nodejs实现文件流式下载并显示进度
https://ourcodeworld.com/articles/read/228/how-to-download-a-webfile-with-electron-save-it-and-show-download-progresselectron作为一种js编写跨平台桌面客户端的技术,目前已经使用比较广泛了,但有时候需要在软件里面进行内部文件下载实现热更新,electron自带的a...
2018-04-18 12:13:44 16723 7
原创 sprintboot+scala文件上传下载
常用的springboot+scala实现的webservice上传下载,maven配置文件采用常规配置,见springboot+scala配置后端代码FileController.scalapackage org.tashaxing.controllerimport java.io._import org.springframework.web.bind.annotation._imp...
2018-04-18 11:03:27 1108
原创 linux下编译深度学习框架mxnet并使用C++训练模型
mxnet是最近流行的深度学习框架之一,使用起来体验不错,不过平常都是用python接口写程序,本文介绍如何在linux下从源码编译mxnet并使用其C++接口编程。本文所使用的环境是ubunt14.04,g++4.8,如果是其他类unix发行版(fedora,mac os)同理。目标编译出libmxnet.a,libmxnet.so,本文只编译cpu版 链接共享库,调用C++接口...
2018-03-29 09:33:38 8118 14
原创 C++实现轻量级极简httpserver和httpclient(提供http和websocket接口)
一般来说,C++的项目多是偏底层,不怎么需要跟http打交道,但有时候又需要在C++后端项目中加入一些简单 http以及websocket接口,比如游戏运营服务器,金融交易监控服务等。但是传统的实现方法比如采用libcurl,asio等较为重型的框架来做有没有必要,因此,这里采用mongoose这个库来实现基本的httpserver和httpclient功能,非常简单,包含一个h文件,一个cp...
2018-03-17 23:46:39 63821 94
原创 scala akka http基本使用
scala的akka框架有一个极简的http service组件,是把原来spray框架集成到akka里面修改而成,本文简单介绍了akka http 的使用,在一些简单web service项目或者将web作为一个简单模块的后台项目中非常适合。sbt配置name := "MockServer"version := "0.1"scalaVersion := "2.12.3"libraryDepende
2017-12-05 13:14:57 8112 1
原创 scala slick基本使用教程
参考: http://slick.lightbend.com/doc/3.2.1/introduction.html http://www.cnblogs.com/tiger-xc/p/5898585.html http://www.cnblogs.com/tiger-xc/p/5898585.htmlslick是scala生态中的数据库连接组件,跟scala一样有良...
2017-11-28 19:57:52 9122
原创 springboot+scala+slick+react实现微服务
springboot是搭建web微服务的简化框架,本文将springboot与scala和react集成,实现简单的前后端分离的restful api形式的web服务demo代码结构其中java_scala目录下代码支持scala和java混编frontend里面是前端的reactjs代码步骤1 创建springboot项目可以通过官网generate模板项目也可以建立空的maven工程再添加
2017-11-27 23:51:10 2635
原创 react+webapck多页面(multipage)程序
reactjs是facebook开源的新一代前端框架,基于组件式的编程,使得前端开发也能像传统客户端开发一样灵活 但是,为了兼顾已有的网站项目,需要把reactjs的页面与其他项目融合,就需要对页面进行拆分,也就是基于reactjs的多页面程序,本文构建了一个简单的react+webpack 多页面demo,便于理解和运用预览主页: 页面1: 页面2: 各页面之间独立通过超链接联系项目结构
2017-11-26 21:40:17 7966
原创 scala调用python
scala项目中调用python的几种方法首先在工程目录某个地方建立了一个python文件 test.pyimport sysdef addNum(a, b): return a + bif __name__ == '__main__': a = 3 b = 7 # if args input if len(sys.argv) == 3: a
2017-10-17 16:52:03 10309
原创 jetty启动的两种方式: standalone启动和scala程序内嵌启动
jetty(官网:http://www.eclipse.org/jetty/)是一个轻量级的web server容器,可以单独启动,也可以嵌入到scala/java中用代码进行启动,从而方便继承到已有的业务逻辑中去standalone方式下载jetty distribution 进入根目录,执行启动命令> cd demo-base/> java -jar ../start.jar在浏览器中访
2017-10-17 14:58:23 2142
转载 Python 各种扩展名(py, pyc, pyw, pyo, pyd)区别
扩展名在写Python程序时我们常见的扩展名是py, pyc,其实还有其他几种扩展名。下面是几种扩展名的用法。pypy就是最基本的源码扩展名pywpyw是另一种源码扩展名,跟py唯一的区别是在windows下双击pyw扩展名的源码会调用pythonw.exe执行源码,这种执行方式不会有命令行窗口。主要用于GUI程序发布时不需要看到控制台信息的情况。pyc在执行python代码时经常会看到同目录下自动
2017-10-10 17:25:45 5376
原创 matlab调用python代码
科学计算或者写量化策略有时候需要用matlab去调用python的api,这里推荐一个简单的实现方法。 其实matlab比较新的版本中自带了一个适配组件可以直接调用python系统函数查看一下python的版本>> pyversion version: '2.7' executable: 'D:\Programs\WinPython-64bit-2.7.10.3\python-
2017-08-08 18:00:59 25737 16
原创 量化交易中VWAP/TWAP算法的基本原理和简单源码实现(C++和python)
参考文献: https://en.wikipedia.org/wiki/Time-weighted_average_price https://en.wikipedia.org/wiki/Volume-weighted_average_price http://blog.sina.com.cn/s/blog_163a2b9700102wdy0.html https://www
2017-06-01 22:00:28 63029 2
原创 C/C++使用openssl进行摘要和加密解密(md5, sha256, des, rsa)
#include #include #include #include "openssl/md5.h"#include "openssl/sha.h"#include "openssl/des.h"#include "openssl/rsa.h"#include "openssl/pem.h"// ---- md5摘要哈希 ---- //void md5(const std::
2017-05-26 08:48:10 21419 7
原创 C/C++使用libcurl库发送http请求
C++要实现http网络连接,需要借助第三方库,libcurl使用起来还是很方便的环境:win32 + vs2015如果要在linux下使用,用cmake编译,使用基本同理 1,下载编译libcurl下载curl源码,找到vs工程,按照x86 x64 并对应debug和release编译出静态库lib 2,构建工程1)curl头文件和lib拷贝到工程目录2)配置...
2017-05-07 21:05:59 21606
原创 Qt工程pro文件的简单配置(尤其是第三方头文件和库)
Qt开发中,pro文件是对正工程所有源码、编译、资源、目录等的全方位配置的唯一方式,pro文件的编写非常重要,以下对几个重要项进行说明(win和linux,mac平台通用配置)注释以”#”开始的行,直到结束模板变量告诉qmake生成哪种makefileTEMPLATE = app其中app -表示该工程建立一个应用程序的makefile。这是默认值,所以如...
2017-05-07 00:36:40 30965 3
原创 C/C++获取操作系统、CPU、内存信息、硬盘、IP和MAC、进程信息(windows和linux)
有时候需要在工程里面获取一些系统或者硬件的信息,比如系统版本,cpu,内存,显卡,硬盘,网络等,作为后续软件功能判断的依据,甚至参与性能算法自适应建模Windows操作系统和内存信息在windows下通过系统的API来获取,CPU信息则需要需要通过底层CPUID指令取得代码:#include <iostream> #include <string>#i...
2017-05-01 17:39:41 45788 8
原创 python脚本编程:批量对比文本文件,根据具体字段比较差异
有时候又这样的需求,有两个文件(里面是表形式的数据,字段有重合也有不一样的),需要对比两个文件之间的差异数据记录并摘出来文件示例A文件表每条记录的格式:03090000 00049993 9222100502392220106000000020000029000170124500019054 20170124 12:30:0162290834743551291
2017-04-28 15:39:49 3576
原创 C++连接redis
redis是很好机遇key-value的缓存数据库,但是一直缺乏一个好的C++调用接口,官方有个hiredis的C接口,但是只能在linux下用这里简单介绍了一个开源的基于C++11和boos::asio的跨平台redis接口,可以实现C++操作redis,本文在windows环境下使用的,linux同理来源github地址:https://github.com/nekipel
2017-04-09 20:20:26 18302
原创 cmake工具使用简明教程(基于命令行和gui,编译到windows和linux双平台)
引用 https://cmake.org/runningcmake/ https://cmake.org/cmake-tutorial/ http://www.hahack.com/codes/cmake/ http://www.cnblogs.com/cuiocean/p/5460419.htmlcmake可以用来构建跨平台的项目,本文简要讲解针对多目录源码...
2017-04-09 19:02:37 24340 6
转载 所谓的quant是什么
翻译引用自 On Becoming a Quant by Mark Joshi,很经典的文章quant是做什么的quant的工作就是设计并实现金融的数学模型(主要采用计算机编程),包括衍生物定价,风险估价或预测市场行为等。所以quant更多可看为工程师,按中国的习惯性分类方法就是理工类人才,而不是文科人才,这个和金融有一定的区别(当然金融也有很多理工的内容)。有哪几种quanta. desk qu
2017-03-29 17:43:58 4745
原创 C++类成员函数指针解析
类的成员函数指针作为参数传递给其他函数和普通函数指针的传递是不同的普通函数指针的传递只要在参数声明中声明是相同参数个数、类型和相同返回类型的函数指针,可是传递类成员函数指针用此方法却不能工作。指针是指向一些内存地址的变量,既可以是数据的地址也可以是函数的地址。C++的 成员指针遵从同样的原则。但在类内部没有地址;选择一个类的成员意味着在类中偏移。只有把这个偏移和具体对象的开始地址结合,
2017-03-29 16:15:45 1123
原创 C/C++读写csv文件
csv文件其实就是文本文件,每行字段用逗号分隔。代码#include #include #include #include #include using namespace std;int main(){ // 写文件 ofstream outFile; outFile.open("data.csv", ios::out); // 打开模式可省略 out
2017-03-21 18:39:15 82198 18
原创 visual studio配置中包含目录和附加包含目录的区别以及auto-linking
引用 http://blog.csdn.net/qing101hua/article/details/53841827 http://blog.csdn.net/zcedar/article/details/51444343两个问题在visual studio中配置第三方代码库时涉及到包含目录和库目录,那么Include Directories和Additional Include D
2017-01-08 12:13:08 7385
原创 linux下C/C++网络编程基本:socket实现tcp和udp的例子
简单的linux下socket编程,分别基于TCP和UDP协议实现的简单程序linux下socket编程可以概括为以下几个函数的运用: socket() bind() listen() connect() accept() read() write() close()函数 基于TCP实现流程...
2017-01-06 20:43:39 58309 10
原创 iOS开发:手势解锁(带路线相交检测)
一个普通的手势解锁插件,可以判断路线交叉预览思路(1)画点画线dot和line,用ios自带绘图来做#pragma mark - 搭建初始UI- (void)createUI{ // 提示语 tipLabel = [[UILabel alloc] initWithFrame:CGRectMake(self.frame.size.width /
2016-12-28 15:07:58 956
用ctp官方接口写的一个简单demo,具备行情、交易、k线数据以及策略功能,可以连接simnow进行模拟交易
2017-04-18
quickjs分支版本源码,quickjs-0.5. https://github.com/quickjs-ng/quickjs
2024-07-01
libtorch_nlp_demo.zip
2020-07-08
轻量级C++实现的httpserver和httpclient
2018-03-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人