
C++
文章平均质量分 74
一鸣惊人的啦
芝士就是学习的动力。
展开
-
C++ I/O库之文件输出:ofstream
1.相关文件模式in:以读方式打开;out: 以写方式打开;app:(append)每次写操作都定位到文件末尾;ate:打开文件后立即定位到文件末尾;trunc:截断文件(默认截断后文件长度为0);binary:以二进制方式进行I/O。2.文件模式的注意事项(1)默认情况下,以out模式打开文件时文件也会被截断。为了保留以out模式打开的文件的内容,必须指定app模原创 2015-03-30 10:17:39 · 1265 阅读 · 0 评论 -
libcmt.lib和msvcrt.lib冲突,原因和解决方法
libcmt.lib和msvcrt.lib冲突,原因和解决方法libcmt.lib是windows环境下vc提供的静态运行时库(多线程);msvcrt.lib是动态运行时库。原因由于DLL(或EXE)工程设置的Runtime Library 和 它导入的其他(.lib)库的Runtime Library不同。比如: 下面为Release版,其中Runtime Library和use of MFC 需原创 2016-06-30 15:38:06 · 13696 阅读 · 0 评论 -
AFX_MANAGE_STATE(AfxGetStaticModuleState())DLL资源
转载地址:http://blog.sina.com.cn/s/blog_62bb83b10100jbdj.htmlAFX_MANAGE_STATE(AfxGetStaticModuleState()) 先看一个例子:1、创建一个动态链接到MFC DLL的规则DLL,其内部包含一个对话框资源。指定该对话框ID如下:转载 2015-10-14 17:10:23 · 581 阅读 · 0 评论 -
struct 字节对齐详解
转载地址:http://blog.chinaunix.net/uid-14802518-id-2784907.html一.什么是字节对齐,为什么要对齐? 现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定类型变量的时候经常在特 定的内存地址访问,这就需要各种类型数据按照一定的规则在空间上排列,而不是顺序的一个转载 2015-09-19 21:44:41 · 445 阅读 · 0 评论 -
def文件 导出dll重载函数
转载地址:http://blog.163.com/very_apple/blog/static/27759236201092024110861/动态链接库DLL_Sample.dllDLL_Sample.h:#ifdef TEST_API# define TEST_API _declspec(dllexport)#else# define TEST_API _decls转载 2015-09-09 20:38:36 · 2132 阅读 · 0 评论 -
动态链接库.dll和.lib
测试环境vs2008一、关于动态链接库1、使用动态链接库时,一般都需要两个文件:静态库(引入库).lib和动态库.dll2、加载方式:隐式链接,编译工程时,需要先添加.lib文件。可以直接通过编译环境添加,还可以通过代码添加(#pragma comment (lib,"XXX.lib"))动态链接:通过下面几个函数实现,LoadLibrary("XXX.dll"); GetP原创 2015-07-24 17:45:17 · 4566 阅读 · 0 评论 -
内存泄漏分析及常用内存泄漏检测工具分享
转载地址:http://blog.youkuaiyun.com/panda_bear/article/details/8009421一.内存泄漏的定义 一般我们常说的内存泄漏是指堆内存的泄漏。堆内存是指程序从堆中分配的,大小任意的(内存块的大小可以在程序运行期决定),使用完后必须显示释放的内存。应用程序一般使用malloc,realloc,new等函数从堆中分配到一块内存,使用完后转载 2015-06-29 11:13:09 · 683 阅读 · 0 评论 -
std::map的一些常见用法和个别注意事项
声明:这篇文章中有参考引用(已表明)。1、map中添加元素首先map中的键值(key)存入的时候是以常量的类型存入的,我们可以从map的成员函数value_type看出。typedef pairconst Key, Type> value_type;(A type that represents the type of object stored as an element原创 2015-05-19 11:12:59 · 3052 阅读 · 0 评论 -
C++中的 虚表(vtable)和虚指针(vptr)
1、每个c++类都有一个vtable,每个类对象都有个vtable的vptr;2、在vc中,类的继承是在基类后面追加数据的形式进行继承的。测试代码如下(在32位系统下的vs2008环境中测试的):class Test{public:Test(int a) {data = a;}virtual ~Test() {coutvirtual void fun原创 2015-06-21 19:52:56 · 5754 阅读 · 4 评论 -
C++ 多重继承和虚拟继承的内存布局(vtable,vptr)
Reproduced address:http://www.phpcompiler.org/articles/virtualinheritance.htmlMemory Layout for Multiple and Virtual Inheritance (By Edsko de Vries, January 2006)Warning. This article is rathe转载 2015-06-21 15:55:12 · 2073 阅读 · 0 评论 -
关于C++标准库中的remove_copy,copy,remove,replace函数
本篇文章主要关于remove_copy和copy函数中的OutputIterator参数的选定。以remove_copy为例:template OutputIterator remove_copy( InputIterator _First, InputIterator _Last, OutputIterator _Result,原创 2015-05-04 14:54:31 · 984 阅读 · 0 评论 -
在编译器(如vs2008)里调用别人写好的lib和dll
转载地址:http://www.cnblogs.com/kanego/archive/2012/02/10/2344968.html步骤:1.Tools->options->projects and solutions->VC++ directories分别在包含文件,库文件填加了路径 (这些路径只告诉编译器怎么找文件,没有说把那里面的文件加入工程转载 2015-04-21 20:34:56 · 760 阅读 · 0 评论 -
ICMP之应用:ping(ICMP.dll)
转载地址:http://www.cnblogs.com/berry/articles/1582823.html原理简介:--------这个例子演示了应用微软的ICMP.DLL怎样"ping"另一台机器. 这个DLL是没有文档话的发送ICMP回送包API接口, 也称为"pings," 就像潜水员对声纳信号的术语一样. 这段代码出自一个被一个名叫MarkG的家伙的GUI程序, 他的网转载 2015-04-20 17:36:08 · 3480 阅读 · 0 评论 -
CDilog::DoModal调用失败,原因分析
转载:http://baike.baidu.com/link?url=usfpIm2pHh2DaVtq8SQtdQVkzzED8dbAOic1vUh3ar6cQv3UHwbLilOlKWaEZy-1LaUAY56nTJY3eUn_g20i9_DoModal()函数调用失败的原因分析:对话框DoModal()函数调用失败一般而言有两种表现形式:一是对话框弹不出来,但是没有错误转载 2015-04-09 20:17:41 · 1468 阅读 · 0 评论 -
VC 开机自动启动程序代码
转载地址:http://blog.chinaunix.net/uid-8416261-id-2462824.html很多监控软件要求软件能够在系统重新启动后不用用户去点击图标启动项目,而是直接能够启动运行,方法是写注册表Software\\Microsoft\\Windows\\CurrentVersion\\Run。参考程序可以见下:(查找程序目录的执行文件,存在则进行添加注转载 2015-04-14 18:20:27 · 669 阅读 · 0 评论 -
STL容器的常用方法
STL顺序容器和关联容器的常用方法。vector,list,deque,queue,stack,priority_queue,map,set,multimap,multiset原创 2016-07-24 12:04:31 · 1442 阅读 · 0 评论