VS开发
文章平均质量分 70
MFC开发,C++开发相关知识
优惠券已抵扣
余额抵扣
还需支付
¥39.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
Zhang_P_Y
关注机器学习、计算机视觉、嵌入式(MCU、DSP、ARM)和桌面开发等领域
展开
-
VS2010调试warning MSB8012:路径不匹配问题
VS2010调试warning MSB8012原创 2015-10-17 19:41:14 · 2985 阅读 · 0 评论 -
VS2010开发.cpp与.c的注意事项
VS2010开发.cpp与.c的注意事项声明:引用请注明出处http://blog.csdn.net/lg1259156776/强大的VS2010,正是由于vs2010的完全封装,让现在的windows程序开发变得简单易于操作的同时,也使得程序员渐渐地丧失了对整个程序开发流程的认识,甚至将一些概念给模糊、混淆了。比如今天说的这个问题就是,很多时候再进行算法验证的时候都是基于windows下VS201原创 2015-10-17 23:33:46 · 3249 阅读 · 0 评论 -
C语言获取文件大小相关操作
通常在希望从文件中把数据全都出来赋值给一个数组或者某一个指针,然后再进行相关的数据处理,比如解码等操作。而在进行赋值以前,数组或者指针都需要进行内存分配,通常对于数组可以直接以文件最大的字节数进行分配,或者指针用malloc也按照最大字节进行分配,但这样会造成内存浪费,对于追求完美的程序员来讲是不能容忍的。所以一种非常适合的方法是在读取文件具体数据之前,可以提前获得文件大小,然后利用malloc对指针进行内存分配原创 2015-10-18 10:43:19 · 2204 阅读 · 0 评论 -
VS2010 如何在调试的时候输入参数
VS2010 如何在调试的时候输入参数原创 2015-10-18 15:43:16 · 3227 阅读 · 0 评论 -
关于lib和dll
关于lib和dll声明:引用请注明出处http://blog.csdn.net/lg1259156776/说明:这里说的就是静态链接库LIB和动态链接库DL,有些时候经常弄混淆这两个东西,这里基于VS2010说明一下这两种库的特点及其构建。VS2010下的两种链接库静态链接库与动态链接库都是共享代码的方式,如果采用静态链接库,则无论你愿不愿意,lib 中的指令都全部被直接包含在最终生成的 EXE 文原创 2015-10-19 19:02:20 · 1517 阅读 · 0 评论 -
关于VS2010工程各种路径注意事项汇总
前段时间调试,利用cmake生成的vs2010工程文件,虽然该工程调试好了,但是对于为了修改相关接口函数,然后重新复制工程文件到新的目录下进行调试,总是出现各种各样的错误,最后发现问题出在了VS2010工程中各种包含路径的错误,是相对路径与绝对路径的问题,导致生成的库文件和修改后包含的头文件并不是在我拷贝后的那个工程路径下,而是在父工程目录下,浪费了不少时间,下面对VS工程中一般需要设置的路径进行说明。原创 2015-10-19 10:14:52 · 2671 阅读 · 0 评论 -
CMake生成VS2010工程相对路径和绝对路径问题说明
CMake生成VS2010工程相对路径和绝对路径问题说明声明:引用请注明出处http://blog.csdn.net/lg1259156776/主要是使用CMake生成的VS2010的工程,最好不要直接拷贝,最好的方法还是把给的那个CMake工程放入到合适的工程下,然后再重新Cmake生成,这样可能会减少路径出错的可能性。原创 2015-10-20 10:17:22 · 6626 阅读 · 0 评论 -
【编程开发】opencv实现对Mat中某一列或某一行的元素进行normalization
【编程开发】opencv实现对Mat中某一列或某一行的元素进行normalization标签: 【编程开发】 【机器学习】声明:引用请注明出处http://blog.csdn.net/lg1259156776/说明:在机器学习中,最常见的处理就是对输入的特征向量进行normalization,在opencv中就实现了normalize函数进行各种normalization,本文结合我的实际应用来进行原创 2015-11-06 22:02:35 · 9817 阅读 · 0 评论 -
【读书笔记】程序员的自我修养总结(一)
程序员的自我修养总结(一)声明:引用请注明出处http://blog.csdn.net/lg1259156776/说明:这是程序员的自我修养一书的读书总结,随着阅读的推进,逐步增加内容。1. 关于CPU的倍频原先并没有倍频概念,CPU的主频和系统总线的速度是一样的,但CPU的速度越来越快,倍频技术也就应运而生。它可使系统总线工作在相对较低的频率上,而CPU速度可以通过倍频来无限提升。那么CPU主频的原创 2015-10-21 19:32:53 · 2388 阅读 · 1 评论 -
【读书笔记】程序员的自我修养总结(二)
程序员的自我修养总结(二)声明:引用请注明出处http://blog.csdn.net/lg1259156776/说明:这是程序员的自我修养一书的读书总结,随着阅读的推进,逐步增加内容。由源文件到可执行文件分为四个步骤:预处理处理源代码中以#开始的预编译指令,进行宏定义展开,处理所有条件预编译指令,将被包含文件插入到预编译指令的位置,删除所有注释,添加行号及文件标识,保留#pragma编译器指令,因原创 2015-10-22 10:42:00 · 2466 阅读 · 0 评论 -
【编程开发】C语言中随机数rand使用注意事项
【编程开发】C语言中随机数rand使用注意事项标签: 【编程开发】声明:引用请注明出处http://blog.csdn.net/lg1259156776/说明:随机数在编程开发中非常重要,以C语言中的rand函数为例,使用时需要注意随机数的随机体现在哪里,比如是程序在不同的时刻执行时,相同位置的随机数是否需要一样,还是要每次执行生成的随机数也要不一样,等等,这些都是需要加以关注的地方。经测试,发现,原创 2015-11-06 14:03:02 · 1825 阅读 · 0 评论 -
windows下进程与线程
windows下进程与线程Windows是一个单用户多任务的操作系统,同一时间可有多个进程在执行。进程是应用程序的运行实例,可以理解为应用程序的一次动态执行;而线程是CPU调度的单位,是进程的一个执行单元。一个进程可以有多个线程,而一个线程只能从属于一个进程。 进程包含文本、数据、堆栈片段一级进程自身的资源(比如进程创建的文件、管道、同步对象等)。由操作系统负责管理进程及其资源,与进程相关的信息原创 2015-09-20 22:06:10 · 825 阅读 · 0 评论 -
【读书笔记】程序员的自我修养总结(三)
【读书笔记】程序员的自我修养总结(三)声明:引用请注明出处http://blog.csdn.net/lg1259156776/说明:这是程序员的自我修养一书的读书总结,随着阅读的推进,逐步增加内容。静态链接1. 静态链接库实际上就是一堆目标文件的归档,可以在cmd命令中使用命令ar t xx.lib可以解析出对应的obj文件,也可以通过ar -v -x xx.lib将目标文件解析出来。所以,需要了解原创 2015-10-23 20:41:10 · 1249 阅读 · 0 评论 -
【DSP开发】DSP能用VS2010生成的链接库文件吗?
【DSP开发】DSP能用VS2010生成的链接库文件吗?声明:引用请注明出处http://blog.csdn.net/lg1259156776/说明:可能这个问题让行家看上去就会莞尔一笑,但是很多时候在开发中经常被这种莫名其妙的想法给迷住,实际上是对其中涉及到的一些基本概念和原理不太清楚所致,本文将对这个问题进行详细的分析。我们有时说C/C++语言是源码级别的跨平台,主要是指的是在不同的操作系统平台原创 2015-10-25 16:13:43 · 2901 阅读 · 0 评论 -
【编程开发】 C与C++中的关于函数指针的强制类型转换与指针函数的关系
【编程开发】 C与C++中的关于函数指针的强制类型转换与指针函数的关系标签: 【编程开发】 【VS开发】声明:引用请注明出处http://blog.csdn.net/lg1259156776/以qsort为例:int cmpa(const void *a, const void *b){ if ( *(double*)a < *(double*)b ) return -1; if原创 2015-11-11 10:27:30 · 3321 阅读 · 1 评论 -
【编程开发】CMake相关注意事项
【编程开发】CMake相关注意事项声明:引用请注明出处http://blog.csdn.net/lg1259156776/CMake是一个非常常用的跨平台移植的工具,CMake可用来生成不同平台下的makefile或者工程,在使用中既可以采用GUI的配置方式,当然也可以使用cmd命令行的方式,但是最为方便的还是gui上面的配置,特别是当需要在cmd中使用时需要输入其他命令的时候,使用gui则可以通过原创 2015-10-26 19:18:07 · 1407 阅读 · 0 评论 -
大端小端存储问题解析
大端小端存储问题解析说明:在单片机,dsp或者是上位机通讯接口开发及文件读取等应用中常常会遇到存储结构上大端还是小端的问题,如果不清楚时常会出现数据错位等,比较容易造成困惑,这里对大端小端存储问题进行解析,方便参考应用。首先,存储结构都是以字节为单位组织的,不管字长是多少位的都没关系。原创 2015-10-12 15:32:25 · 1998 阅读 · 0 评论 -
【读书笔记】程序员的自我修养总结(四)
【读书笔记】程序员的自我修养总结(四)标签: 【编程开发】声明:引用请注明出处http://blog.csdn.net/lg1259156776/说明:这是程序员的自我修养一书的读书总结,随着阅读的推进,逐步增加内容。链接过程中空间和地址分配 可执行文件中的代码段和数据段都是由输入目标中合并而来,链接器如何将各个段合并到输出文件并分配输出文件中的空间的呢?分配方法方法一:直接按序叠加,obj原创 2015-10-27 11:34:42 · 1217 阅读 · 0 评论 -
【读书笔记】程序员的自我修养总结(五)
【读书笔记】程序员的自我修养总结(五)声明:引用请注明出处http://blog.csdn.net/lg1259156776/说明:这是程序员的自我修养一书的读书总结,随着阅读的推进,逐步增加内容。COMMON块前面提到过强弱符号机制允许同一个符号的定义存在于多个文件中,编译器知道变量数据类型,而链接器则不知道数据类型,即变量类型对链接器是透明的,只知道一个符号的名字,并不知道类型是否一致。当定义多原创 2015-10-28 10:06:22 · 1649 阅读 · 0 评论 -
【计算机视觉】opencv读取多个摄像头
【计算机视觉】opencv读取多个摄像头标签(空格分隔): 【图像处理】说明:今天蹭了机器视觉课程,讲到了stereopsis,立体视觉,讲到了关于通过多个摄像头获取object的depth信息的事情,因为想到从来没有试过打开多个摄像头进行过处理,这次进行了测试,这里小小记录一下。opencv提供的VideoCapture可以很方便的打开视频、摄像头设备,而且直接输入对应的摄像头标号即可,或者视频的原创 2015-11-12 20:45:24 · 8870 阅读 · 2 评论 -
纵说“同步”与“异步”
纵说“同步”与“异步”说明:这里只是为了强调两个概念,同步和异步的含义。在数字电路中通常指的是有无同步时钟信号,如果有同步时钟,就称为同步,没有则称为异步。比如同步串行通信与异步串行通信,SDRAM中的S也是指的同步时钟的意思。在操作系统或者是多任务编程中,同步与异步指的是函数调用的返回时间,比如线程同步与线程异步。这里对相关概念进行梳理。原创 2015-10-14 16:06:11 · 2660 阅读 · 0 评论 -
【VS开发】CString 转为 char *方法大全
【VS开发】CString 转为 char *方法大全标签(空格分隔): 【VS开发】方法1:CString strTemp;char szTemp[128];strTemp = _T("abckdkfei");memset( szTemp, 0, sizeof(szTemp) );strcpy( szTemp, strTemp.GetBuffer(strTemp.GetLength()));原创 2015-11-14 08:54:31 · 6888 阅读 · 0 评论 -
【VS开发】VS2010 MFC中控件、对话框等背景颜色动态修改的方法
【VS开发】VS2010 MFC中控件、对话框等背景颜色动态修改的方法标签(空格分隔):【VS开发】声明:引用请注明出处http://blog.csdn.net/lg1259156776/说明:最近突发奇想想完成两件新的人机交互工程,一个是基于眼动仪的眼动控制,另一个是基于camera的手动控制,最直观的方法就是使用slider滑块,眼睛或手左右动,slider也左右动,眼睛或手上下动,slider原创 2015-10-31 16:33:30 · 7954 阅读 · 2 评论 -
【读书笔记】程序员的自我修养总结(六)
【读书笔记】程序员的自我修养总结(六)标签: 【编程开发】声明:引用请注明出处http://blog.csdn.net/lg1259156776/说明:这是程序员的自我修养一书的读书总结,随着阅读的推进,逐步增加内容。 本文主要介绍可执行文件的装载与进程程序与进程的区别程序是静态的,指的是一些预先编译好的指令和数据集合的一个文件;而进程实际上就是运行着的程序,是动态的。虚拟地址空间程序运行起来后将原创 2015-11-01 15:46:22 · 1903 阅读 · 0 评论 -
【读书笔记】程序员的自我修养总结(七)
【读书笔记】程序员的自我修养总结(七)标签: 【编程开发】声明:引用请注明出处http://blog.csdn.net/lg1259156776/说明:这是程序员的自我修养一书的读书总结,随着阅读的推进,逐步增加内容。 本文主要介绍可执行文件的装载与进程ELF文件的链接视图和执行视图 当段的数量增多时,会产生空间浪费的问题:因为ELF文件被映射时时以系统的页长度作为单位的,那么每个段在影射时的原创 2015-11-02 21:47:44 · 2204 阅读 · 1 评论 -
【VS开发】MFC中调用C函数模块的解决方案
【VS开发】MFC中调用C函数模块的解决方案标签(空格分隔): 【VS开发】声明:引用请注明出处http://blog.csdn.net/lg1259156776/说明:最近调试基于MFC的程序,当通过外部C文件引入某个function的时候,又一次忘记了C文件与C++文件的区别,直接按照一般的方式,将函数声明放入头文件,将函数定义放入C文件,然后再MFC中通过包含头文件来引用对应的function原创 2015-12-04 12:16:08 · 3753 阅读 · 0 评论 -
VS开发】C中调用C++文件中定义的function函数
【VS开发】C中调用C++文件中定义的function函数标签(空格分隔): 【VS开发】声明:引用请注明出处http://blog.csdn.net/lg1259156776/精要一揽C调用C++,使用extern “C”则是告诉编译器依照C的方式来编译封装接口,当然接口函数里面的C++语法还是按C++方式编译。使用extern “C” 主要是因为C编译器编译函数时不带参数的类型信息,只包含函数的原创 2015-12-04 18:51:44 · 3643 阅读 · 0 评论 -
堆栈与程序指针
堆栈是一种具有“后进先出”(LIFO---Last In First Out)特殊访问属性的存储结构。堆栈一般使用RAM 物理资源作为存储体,再加上LIFO 访问接口实现。SP 详解" title="堆栈指针寄存器 SP 详解" style="margin:0px; padding:0px; border:0px; list-style:none"> 堆栈的实现方法:转载 2016-03-01 21:10:12 · 2754 阅读 · 0 评论 -
VC程序运行时间测试函数
VC程序运行时间测试函数介绍 我们在衡量一个函数运行时间,或者判断一个算法的时间效率,或者在程序中我们需要一个定时器,定时执行一个特定的操作,比如在多媒体中,比如在游戏中等,都会用到时间函数。还比如我们通过记录函数或者算法开始和截至的时间,然后利用两者之差得出函数或者算法的运行时间。编译器和操作系统为我们提供了很多时间函数,这转载 2016-03-03 10:33:59 · 3914 阅读 · 0 评论 -
Windows下获取CPU频率
一直想在Windows下取得CPU的时钟速度,找了好久终于找到了函数CallNtPowerInformation,要想使用它,首先必须包含powrprof.h头文件和链接库powerprof.lib.但是还有几个问题: 首先powrprof.h和许多其它在Platform SDK中的头文件一样依然没有被C++验证,如果你在C++程序中包含它的时候如果不小心,依然会有链接错误。转载 2016-03-03 10:50:52 · 5470 阅读 · 0 评论 -
QueryPerformanceFrequency 基本介绍精确获取时间
精确获取时间:QueryPerformanceFrequency() - 基本介绍类型:Win32API原型:BOOL QueryPerformanceFrequency(LARGE_INTEGER *lpFrequency);作用:返回硬件支持的高精度计数器的频率。返回值:非零,硬件支持高精度计数器;零,硬件不支持,读取失败。QueryPerfor转载 2016-03-03 10:52:35 · 5506 阅读 · 0 评论 -
【VS开发】QueryPerformanceFrequency与QueryPerformanceCounter的使用
LARGE_INTEGER tima,timb; QueryPerformanceCounter(&tima);在 Windows Server 2003 和 WindowsXP 中使用 QueryPerformanceCounter 函数的程序可能执行不当QueryPerformanceCounter 來精確計算執行時間QueryPerformanceCounter 來精转载 2016-03-03 10:53:58 · 1100 阅读 · 0 评论 -
【VS开发】#pragma预处理命令
#pragma预处理命令#pragma可以说是C++中最复杂的预处理指令了,下面是最常用的几个#pragma指令:#pragma comment(lib,"XXX.lib")表示链接XXX.lib这个库,和在工程设置里写上XXX.lib的效果一样。#pragma comment(linker,"/ENTRY:main_function")表示指定链接器选项/ENTRY:ma转载 2016-03-03 12:24:12 · 2199 阅读 · 0 评论 -
【VS开发】C/C++预编译命令
C/C++中宏总结C程序的源代码中可包括各种编译指令,这些指令称为预处理命令或预处理器。虽然它们实际上不是C语言的一部分,但却扩展了C程 序设计的环境。预处理指令的主要作用就是把通过预处理的内建功能对一个资源进行等价替换,最常见的预处理有:文件包含,宏替换,条件编译和布局控制4种。文件包含:#include 是一种最为常见的预处理,主要是做为文件的引用组合源程序正文。宏转载 2016-03-03 12:26:04 · 1903 阅读 · 0 评论 -
【VS开发】Return与Exit的区别
1. exit用于结束正在运行的整个程序,它将参数返回给OS,把控制权交给操作系统;而return 是退出当前函数,返回函数值,把控制权交给调用函数。2. exit是系统调用级别,它表示一个进程的结束;而return 是语言级别的,它表示调用堆栈的返回。3. 在main函数结束时,会隐式地调用exit函数,所以一般程序执行到main()结尾时,则结束主进程。exit将删除进程使用的内存空间转载 2016-03-03 13:44:29 · 1096 阅读 · 0 评论 -
【VS开发】获取CPU tick tick 周期
多核处理器时,__rdtsc()的使用-编程珠玑第一章根据书中提供的代码清单1-5,可以完成对于多核处理器的cpu占用率的控制。但是在使用GetCPUTickCount计时时,下面的算式会出现一点小问题:这里按照变量millisec 定义的名字,认为后面算式计算的结果是毫米ms,但是((double)t_end – (double)t_begin)/转载 2016-03-03 15:47:01 · 4826 阅读 · 0 评论 -
Ddr2,ddr3,ddr4内存条的读写速率
理论极限值是可以计算的:1333MHz * 64bit(单通道,双通道则128bit) / 8(位到字节单位转换) = 10.664GB/s。这只是理论,实际发挥还要看内存控制器,实际上1333单条跑出来的数据在7~9GB/s差不多了。首先,实际中我没见过内存速度超过10GB/s的情况,不知道是不是题主你把单位弄错了?实际见过的像RamDisk之类的软件,连续读写能达到的速度也不过5~8G原创 2016-03-03 15:50:26 · 27788 阅读 · 2 评论 -
【VS开发】malloc申请内存错误分析
每个进程会有4G的虚拟地址空间, malloc得到的的地址都是虚拟地址, 并且当malloc的时候, 操作系统并不会将实际的内存分配给进程的, 所以malloc只会占用进程自身的虚拟地址空间。我以前也做过申请内存的测试,并且写了一个短文:操作系统: Redhat Linux AS5 32bit服务器内存: 4G服务器类型: I32最近写搜索引擎, 因为创建索引需要大量的转载 2016-03-03 15:45:36 · 2671 阅读 · 0 评论 -
【VS开发】千兆以太网的传输速度
千兆以太网主流标准千兆以太网络技术早在上世纪90年代末就已成熟,其中,1995年国际标准化组织TIA/EIA颁布了1000Base-TX标准,该标准的目的是把双绞线用于千兆以太网中,其目的是在6类非屏蔽双绞线(UTP)上以1000Mbps速率传输100米。1000Base-TX基于4对双绞线,采用快速以太网中与100Base-TX标准类似的传输机制,是以两对线发送,两对线接收。由于每对线缆转载 2016-03-03 23:45:34 · 7224 阅读 · 0 评论 -
【VS开发】VSTO 学习笔记(十)Office 2010 Ribbon开发
微软的Office系列办公套件从Office 2007开始首次引入了Ribbon导航菜单模式,其将一系列相关的功能集成在一个个Ribbon中,便于集中管理、操作。这种Ribbon是高度可定制的,用户可以将自己常用的功能进行单独设置,提高工作效率。但是由于Office 2003时代用户的操作习惯已经养成,结果到了Office 2007很多菜单、按钮都找不到了,着实有些尴尬。经过一段时间的适应,相信大转载 2016-03-16 22:00:18 · 8862 阅读 · 0 评论