自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(101)
  • 资源 (3)
  • 收藏
  • 关注

转载 C#调用C++的Dll(参数和返回值為char* TCHAR*)

想要在C#和C++之间进行字符串传递会涉及到两件事情:1.C#的string和C++的字符串首指针要怎么对应.  2.字符串分为ANSI和UNICODE.C++ 头文件接口://xx.h    //參數和返回值為Ansi  extern "C" __declspec(dllexport) char* __stdcall EncryptSt

2017-08-15 11:14:16 478

转载 A、B基金

1. 杠杆基金分类:A基金+B基金A基金又叫稳健(之所以叫稳健, 是因为A基金年收益是固定的, 通常=年利率+3.5%);B基金又叫进取(之所以叫进取, 是因为B基金年收益是不固定的, 通常其升跌%=标的指数*价格杠杆倍数)。 2.2份母基金=1份A基金+1份B基金/或1份母基金=0.5份A基金+0.5份B基金。母基金设在银行买卖,不过通过银行我们不叫买卖,叫申购赎回;买=申购,卖

2017-02-15 16:48:55 388

原创 事件驱动策略简介

事件驱动交易策略是在提前挖掘和深入分析可能造成股价异常波动的事件基础上,通过充分把握交易时机获取超额投资回报的交易策略。采用一系列合理手段,提前分析出可能对股价产生影响的事件将要公布的内容和时间范围,采取事件明朗化前逢低买入,事件明朗化后逢高卖出为主要原则的中短线投资策略。事件驱动交易策略的“事件”是指具有较为明确的时间和内容,能够对部分投资者的投资行为产生一定的影响,从而决定股价短期波动的因

2017-01-25 13:20:19 970

原创 阿尔法套利简介

阿尔法套利是指指数期货与具有阿尔法值的证券产品之间进行反向对冲套利,也就是做多具有阿尔法值的证券产品,做空指数期货,实现回避系统性风险下的超越市场指数的阿尔法收益。为实现阿尔法套利,选择或构建证券产品是关键。首先,兼具折价率与超额收益阿尔法的证券产品是进行阿尔法套利交易的首选,包括具有折价率,并能超越市场指数的认购权证,封闭式基金等。其次,具有超额收益阿尔法的证券产品是进行阿尔法套利交易的次选

2017-01-25 13:11:14 656

原创 套利策略简介

套利也叫价差交易,套利指的是在买入或卖出某种电子交易合约的同时,卖出或买入相关的另一种合约。套利交易是指利用相关市场或相关电子合同之间的价差变化,在相关市场或相关电子合同上进行交易方向相反的交易,以期望价差发生变化而获利的交易行为。套利,通常指在某种实物资产或金融资产(在同一市场或不同市场)拥有两个价格的情况下,以较低的价格买进,较高的价格卖出,从而获取无风险收益。套利指从纠正市场价格或收

2017-01-25 13:01:27 899

原创 CTA策略简介

所有CTA运用的交易策略基本上又可分为两类:趋势交易策略和反趋势交易策略。趋势交易策略是目前CTA运用最广泛的一种交易策略。趋势交易CTA通过运用大量不同的指标去除市场噪音并寻找当前的市场趋势,然后建立头寸,他们从市场趋势的持续发展中渔利。移动平均线、交易量、周期理论等都是趋势交易CTA运用较多的指标。趋势交易CTA根据时间周期的不同,又可分为短线交易者、中线交易者和长线交易者。反趋势交易CTA通

2017-01-25 12:51:40 1402

转载 winbug分析dmp文件

前言:WinDbg是微软开发的免费源代码级的调试工具。WinDbg可以用于Kernel模式调试和用户模式调试,还可以调试Dump文件。本文的讨论是在安装了Debugging Tools for Windows 的前提下进行的,下载地址。WinDbg对于dump文件的调试可以通过菜单设置Symbol File Path、Source File Path ,并可设置多个路径。1、  打开Dum

2016-12-07 15:51:54 1714

原创 vc6 远程调试

调试步骤如下:1)把EXE程序安装到远程机器上2)在远程机器上启动remotedebugfile.exe3)如下图步骤

2016-09-26 12:38:00 204

转载 sizeof

1、什么是sizeof  首先看一下sizeof在msdn上的定义:  The sizeof keyword gives the amount of storage, in bytes, associated with a variable or a type (including aggregate types). This keyword returns a value of type

2016-09-11 16:09:52 205

转载 C语言指针的长度和类型

如果考虑应用程序的兼容性和可移植性,指针的长度就是一个问题,在大部分现代平台上,数据指针的长度通常是一样的,与指针类型无关,尽管C标准没有规定所有类型指针的长度相同,但是通常实际情况就是这样。但是函数指针长度可能与数据指针的长度不同。指针的长度取决于使用的机器和编译器,例如:在现代windows上,指针是32位或是64位长测试代码:#include#include#in

2016-09-11 16:05:53 999

转载 HeapAlloc、VirtualAlloc、GlobalAlloc和LocalAlloc、 alloc、new

1. HeapAlloc:MSDN上的解释为:HeapALloc是从堆上分配一块内存,且分配的内存是不可移动的(即如果没有连续的空间能满足分配的大小,程序不能将其他零散的空间利用起来,从而导致分配失败),该分配方法是从一指定地址开始分配,而不像GloabalAlloc是从全局堆上分配,这个有可能是全局,也有可能是局部。函数原型为:LPVOIDHeapAlloc(    HAND

2016-06-24 17:15:25 266

原创 HTTP Download

internal class DownloadUnit { public void DownloadFile(string strURL, string strFileName, System.Windows.Forms.ProgressBar pbHandle, System.Windows.Forms.Label labErrorHandle) {

2016-06-14 10:03:53 1049

原创 C# 调用 C++ dll出错

由于各自使用的调用规则不同,导致DLL回调或C#调用返回时系统直接calldown,可能原因如下:并不是所有的语言都支持_cdcel调用规则,但是都支持_sdtcall调用规则, 假如你用VC做了一个DLL,导出了某些函数,如果你想这个DLL被其他语言也能调用的话,VB.DEPHI.PB..你的把他的调用约定声明为__stdcallwindows   api都是_stdcall调用规则,函数调

2015-10-31 09:13:35 469

原创 关于异常的疑难解答:System.BadImageFormatException

编译正常,但在运行时候出现,异常信息:在 System.BadImageFormatException 中第一次偶然出现的“***.dll”类型的异常未处理的“System.BadImageFormatException”类型的异常出现在 ***.dll 中。官方解释:如果您的应用程序使用了 32 位组件,请确保该应用程序始终采用 32 位应用程序的运行方式。如果应用程序项目的

2015-10-20 12:42:34 1082

原创 qt4.8.1 + vs2010

1)安装VS20102)登录“http://download.qt.io/archive/qt/4.8/4.8.1/”下载qt-win-opensource-4.8.1-vs2010.exe成功后直接安装。3)环境变量设置    a)QTDIR=C:\Qt\4.8.1    b)QMAKESPEC=win32-msvc2010    c)在Path上追加“;C:\Qt\4.8.

2015-09-07 11:09:42 413

原创 数据库比对

如何快速进行两个数据库结构的比对,以下三步可以轻松完成:一、 建立数据库连接create publicdatabase link DL_SYSTEM   connectto systemidentified byoracle  using'(DESCRIPTION =    (ADDRESS_LIST =      (ADDRESS =(PROTOCOL =

2015-07-31 12:14:57 615

转载 Placement new、operator new、new operator 完全释疑

首先我们区分下几个容易混淆的关键词:      new(也称作new operator)、operator new、placement new。看如下代码: 1: class MyClass {...}; 2: MyClass *p = new MyClass; 这里的new是上述三个关键字中的第一个,成为new操作符。实际上它执行如下3个过

2015-07-16 17:14:47 195

原创 如何在delete一个void *对象后有效执行析构函数

正常情况下:classT *pA = new classT();delete pA;很容易实现完成。如下代码就会有些需要注意的地方:classT *pA= new classT();void *pHandle = pA;delete pHandle;  //这里就不能有效的执行析构函数,可能会造成内存泄漏。怎么办呢?其实和很简单,如下就可以。delete (

2015-07-16 17:07:39 866

转载 memcopy和memmove的区别

memcpy:c和c++使用的内存拷贝函数,memcpy函数的功能是从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置中。memmove:memmove用于从src拷贝count个字符到dest,如果目标区域和源区域有重叠的话,memmove能够保证源串在被覆盖之前将重叠区域的字节拷贝到目标区域中。但复制后src内容会被更改。但是当目标区域与源区域

2015-07-13 10:51:43 429

原创 解决PLSQL与数据库断开卡死的问题

1)确保 select * from dba_profiles t where t.resource_name = 'CONNECT_TIME'中的limit列的值为UNLIMITED2)   执行 alter system set resource_limit=true;3)重新打开PLSQL工具登录即可。

2015-07-06 15:20:58 1765

转载 揭密extern "C"

1. 深层揭密extern "C"    extern "C" 包含双重含义,从字面上即可得到:首先,被它修饰的目标是“extern”的;其次,被它修饰的目标是“C”的。让我们来详细解读这两重含义。(1)被extern "C"限定的函数或变量是extern 类型的;    extern 是C/C++语言中表明函数和全局变量作用范围(可见性)的关键字,该关键字告诉编译器,其声明的函数和变

2015-06-28 22:28:04 231

转载 C++的类型转换:static_cast、dynamic_cast、reinterpret_cast和const_cast

在C++中,存在类型转换,通常意味着存在缺陷(并非绝对)。所以,对于类型转换,有如下几个原则:(1)尽量避免类型转换,包括隐式的类型转换(2)如果需要类型转换,尽量使用显式的类型转换,在编译期间转换(3)避免使用reinterpret_cast和老式的强制类型转换操作符通常,隐式的类型转换会导致警告,需要重视这些警告,并使用显式的类型转换代替,例如static_cast代替一些算术

2015-06-28 22:20:24 249

转载 C/C++中static关键字详解

静态变量作用范围在一个文件内,程序开始时分配空间,结束时释放空间,默认初始化为0,使用时可以改变其值。    静态变量或静态函数只有本文件内的代码才能访问它,它的名字在其它文件中不可见。用法1:函数内部声明的static变量,可作为对象间的一种通信机制    如果一局部变量被声明为static,那么将只有唯一的一个静态分配的对象,它被用于在该函数的所有调用中表示这个变量。这个对象将只在

2015-06-28 22:03:10 193

转载 C/C++中const关键字详解

为什么使用const?采用符号常量写出的代码更容易维护;指针常常是边读边移动,而不是边写边移动;许多函数参数是只读不写的。const最常见用途是作为数组的界和switch分情况标号(也可以用枚举符代替),分类如下:  常变量:        const 类型说明符 变量名  常引用:        const 类型说明符 &引用名  常对象:        类名 const 对象名

2015-06-28 21:39:36 228

转载 C++ 堆和栈的解说

一、程序的内存分配(一个由c/C++编译的程序占用的内存分为以下几个部分)1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。3、全局区(静态区)(static)—,全

2015-06-26 15:10:57 323

原创 函数 snprintf

头文件 #include int snprintf(char *str, size_t size, const char *format, ...)最多从源串中拷贝size-1个字符到目标串中,然后再在后面加一个’\0’。所以如果目标串的大小为size的话,将不会溢出。char *str:目标数组地址size_t size:目标数组大小(一般用sizeof()表示)

2015-02-26 11:08:26 543

原创 函数 sprintf

头文件: stdio.h字符串格式化命令,主要功能是把格式化的数据写入某个字符串中。int sprintf( char *buffer, const char *format, [ argument] … );buffer:char型指针,指向将要写入的字符串的缓冲区。format:格式化字符串。[argument]...:可选参数,可以是任何类型的数据。返

2015-02-26 10:46:57 202

原创 函数 memcmp

int memcmp (const void *a1, const void *a2, size_t size) 原型是:extern int memcmp(void *buf1, void *buf2, unsigned int count);功能上来说是比较a1和a22个buff内的前size个字节,如果相同返回的结果是0当buf1当buf1=buf2时,返回值=0当buf

2015-02-25 16:40:17 615

原创 函数 strncmp

strncmp(const char * a1,const char *a2,int maxlen)与上面的函数类似),用来比较a1和a2两个字符串的,但是之比较两个字符串的钱maxlen长度的字符串当a1当a1>a2时候,返回的值>0当a1=a2时候,返回的值=0函数实现代码:/*** strncmp - Compare two length-limited str

2015-02-25 16:33:44 270

原创 函数 strcmp

strcmp(const char * a1,const char *a2)用来比较a1和a2两个字符串(按ASCII值大小相比较),注意点是这个函数只能用来比较字符串当a1当a1>a2时候,返回的值>0当a1=a2时候,返回的值=0函数实现代码:/*** strcmp - Compare two strings* @cs: One string* @ct: An

2015-02-25 16:27:35 282

转载 Linux动态库、静态库加载基础

静态库        在linux环境中, 使用ar命令创建静态库文件.如下是命令的选项:           d -----从指定的静态库文件中删除文件           m -----把文件移动到指定的静态库文件中           p -----把静态库文件中指定的文件输出到标准输出           q -----快速地把文件追加到静态库文件中        

2015-02-25 15:14:49 338

转载 Linux动态库、静态库加载基础

Linux动态库、静态库加载基础静态库        在linux环境中, 使用ar命令创建静态库文件.如下是命令的选项:           d -----从指定的静态库文件中删除文件           m -----把文件移动到指定的静态库文件中           p -----把静态库文件中指定的文件输出到标准输出           q -----快速地把文件追

2015-02-25 15:09:41 54

转载 GCC 编译动态库和静态库

我们通常把一些公用函数制作成函数库,供其它程序使用。函数库分为静态库和动态库两种。静态库在程序编译时会被连接到目标代码中,程序运行时将不再需要该静态库。动态库在程序编译时并不会被连接到目标代码中,而是在程序运行是才被载入,因此在程序运行时还需要动态库存在。本文主要通过举例来说明在Linux中如何创建静态库和动态库,以及使用它们。在创建函数库前,我们先来准备举例用的源程序,并将函

2015-02-25 14:47:45 320

原创 函数 memcpy

memcpy提供了一般内存的复制。即memcpy对于需要复制的内容没有限制,因此用途更广。该函数将一个大小为size的内存段的值拷贝到另一内存段中。函数原型及实现:void *memcpy(void *memTo, const void *memFrom, size_t size) { assert((memTo != NULL) && (memFrom != NUL

2015-02-25 14:24:37 239

原创 函数 strncpy

该函数用于拷贝count个字符。函数原型及实现:char *strncpy(char *dst, const char *src, size_t count){ assert((dst != NULL) && (src != NULL)); char *tmp = dst; while (count-- && (*dst++ = *s

2015-02-25 14:18:45 297

原创 函数 strcpy

strcpy提供了字符串的复制。即strcpy只用于字符串复制,并且它不仅复制字符串内容之外,还会复制字符串的结束符。函数原型及实现:char* strcpy(char* strDst, const char* strSrc) { assert((strDst != NULL) && (strSrc != NULL)); char* address = strD

2015-02-25 14:13:54 284

原创 Linux 命令之 sftp

用途说明sftp命令可以通过ssh来上传和下载文件,是常用的文件传输工具,它的使用方式与ftp类似,但它使用ssh作为底层传输协议,所以安全性比ftp要好得多。常用方式格式:sftp 通过sftp连接,端口为默认的22,用户为Linux当前登录用户。格式:sftp -oPort= 通过sftp连接,指定端口,用户为Linux当前登录用户。格式:sftp @通过sft

2015-02-25 13:08:01 326

转载 秒杀多线程第十六篇 多线程十大经典案例之一 双线程读写队列数据

本文配套程序下载地址为:http://download.csdn.net/detail/morewindows/5136035转载请标明出处,原文地址:http://blog.csdn.net/morewindows/article/details/8646902 在《秒杀多线程系列》的前十五篇中介绍多线程的相关概念,多线程同步互斥问题《秒杀多线程第四篇一个经典的多线程同步问题》及解决

2015-02-12 12:50:09 440

转载 秒杀多线程第十五篇 关键段,事件,互斥量,信号量的“遗弃”问题

秒杀多线程第十五篇 关键段,事件,互斥量,信号量的“遗弃”问题在《秒杀多线程第九篇 经典线程同步总结 关键段 事件 互斥量 信号量》中对经典多线程同步互斥问题进行了回顾和总结,这篇文章对Windows系统下常用的线程同步互斥机制——关键段、事件、互斥量、信号量进行了总结。有网友问到互斥量能处理“遗弃”问题,事件和信号量是否也能处理“遗弃”问题。因此本文将对事件和信号量作个试验,看看事件和信号量

2015-02-12 12:45:41 327

转载 秒杀多线程第十四篇 读者写者问题继 读写锁SRWLock

在《秒杀多线程第十一篇读者写者问题》文章中我们使用事件和一个记录读者个数的变量来解决读者写者问题。问题虽然得到了解决,但代码有点复杂。本篇将介绍一种新方法——读写锁SRWLock来解决这一问题。读写锁在对资源进行保护的同时,还能区分想要读取资源值的线程(读取者线程)和想要更新资源的线程(写入者线程)。对于读取者线程,读写锁会允许他们并发的执行。当有写入者线程在占有资源时,读写锁会让其它写入者线程和

2015-02-12 12:39:10 285

ZeroMQ手册

ZeroMQ手册

2015-06-30

Java swing 写的管理系统

Java swing 写的管理系统,供学习用

2014-10-30

Java调用C/C++ API 代码示例

Java调用C/C++ API 代码示例

2014-10-30

空空如也

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

TA关注的人

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