学习笔记
mainsea
这个作者很懒,什么都没留下…
展开
-
内存分配方式
内存分配方式有三种:(1) 从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。(2) 在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结原创 2011-10-18 15:49:12 · 595 阅读 · 0 评论 -
C/C++笔记(1)
读书笔记,记录于此,温习之用。1.void 真正发挥的作用在于: (1)对函数返回的限定 (2)对函数参数的限定注:在C99标准中main()函数的返回值默认为int型2.sizeof的真实面目: sizeof是关键字,而并不是有些常认为的的函数,只不过是其长的像而已,那么怎么检验这一说法了?只需在编译器中用sizeo i;即可,编译器通过原创 2012-02-11 11:10:13 · 682 阅读 · 0 评论 -
error LNK2019: 无法解析的外部符号 "__declspec(dllimport) int add(int,int)" (__imp_?add@@YGHHH@Z)
用vs10编写一个工程调用已经编写好的dll,结果总是出现“error LNK2019: 无法解析的外部符号 "__declspec(dllimport) int add(int,int)" (__imp_?add@@YGHHH@Z),该符号在函数 _main 中被引用”的问题,开始以为自己代码码的有问题,仔细检查没有,想起以前遇到过这样的问题,是由于编码方式不同引起的,因为dll的文件采用的是原创 2012-06-05 14:58:33 · 8595 阅读 · 0 评论 -
往 list中写数据时,显示出乱码问题的解决
在往 list中写数据时,显示出乱码,最终解决方法如下。char* temp=(char*) lPeImport.RvaToPtr(pTempDesc->Name); wchar_t pBuf[20]={0}; int nSize=MultiByteToWideChar(CP_ACP,0,temp,-1,0,0); MultiByteToWideChar(CP_ACP,0,t原创 2012-03-19 13:56:56 · 3976 阅读 · 0 评论 -
activex里面的没有CString属性类型
等同于BSTR原创 2011-12-10 22:33:56 · 721 阅读 · 0 评论 -
C++程序入口点函数
CUI控制台程序(不是DOS,没有界面的):main 其中处理Unicode字符和字符串的CUI应用程序是_tmain(Main) 处理ANSI字符和字符串的CUI应用程序是_tamin(Wmain)GUI用户界面程序:WinMain 其中处理Unicode字符和字符串的GUI应用程序是_tWINMain(wWinMain)原创 2011-09-12 17:34:09 · 4115 阅读 · 0 评论 -
int main(int argc,char* argv[])讲解
在最近学习中老是遇到 int main(int argc,char* argv[]),以为就是简单的参数应用了,但是看代码是没能理解参数的具体传递过程,上网找资料才算弄明白点,下面的一篇文章讲的很好很详细,大家可以根据自己的情况看看,资源充分利用嘛。(原文重复的地方已重新整理,无赘述)转自http://blog.csdn.net/lambol_8309/article/details/45249原创 2011-11-07 21:50:03 · 7000 阅读 · 1 评论 -
关于函数调用约定
调用约定,即调用方式影响调用函数时参数的传递方式和函数后栈的回复访求, 几种约定: _cdecl;_stdcall;_fastcall 入栈: 前两者都是参数从右向左入栈,后者使用ECX,EDX,寄存器传递,余下部分翻出从右向左存入栈。 恢复栈: _cdecl:是有调用者将esp和ebp指令恢复到调用前状态;原创 2011-10-28 22:40:16 · 566 阅读 · 1 评论 -
使用标准C++的类型转换符
使用标准C++的类型转换符:static_cast、dynamic_cast、reinterpret_cast、和const_cast。1 static_cast用法:static_cast ( expression ) 该运算符把expression转换为type-id类型,但没有运行时类型检查来保证转换的安全性。它主要有如下几种用法:①用于类层次结构中基类和子类之间转载 2011-10-28 10:23:30 · 513 阅读 · 0 评论 -
对话框响应鼠标/键盘消息
1、如何响应鼠标消息:常用鼠标消息:WM_MOUSEMOVE 鼠标移动位置WM_LBUTTONDOWN 鼠标左键按下WM_LBUTTONUP 鼠标左键弹起WM_LBUTTONDBLCLK 鼠标左键双击WM_RBUTTONDOWN 鼠标右键按下WM_RBUTTONUP 鼠标右键弹起WM_RBUTTONDBLCLK 鼠标右键双击WM_MBUTTONDOWN 鼠标中键原创 2011-10-20 16:38:37 · 4530 阅读 · 1 评论 -
如何将已有的资源添加到如今工程中
在MFC编程中,为了节约时间,方便操作,有时候需要将现有工程的资源直接拿来为正在编写的工程服务。设有工程A,现在要新建一个工程B,在B要见一个和A里面一样的的资源,比方说对话框资源,为了避免重现创建带来的各种重复和麻烦,我们可以直接引用A中编辑好的资源,从而大大节省了时间,具原创 2011-10-07 11:12:36 · 1805 阅读 · 2 评论 -
C/C++笔记(2)
1.关于#define#define X 3 #define Y X*2 #undef X #define X 2 int z=Y;#define就是起名字的意思,后面两个值或变量就指的是同一个东西。#undef 就是解除#define的意思上面的程序意思就是: X=3, Y=X*2, X=2, z=Y=X*2=4.2.一个关于数组定义的问题char *a [100]={"c++","basi原创 2012-02-26 20:40:00 · 723 阅读 · 0 评论