电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

优化c++执行文件效率的方法

优化c++执行文件效率的方法_第1页
1/13
优化c++执行文件效率的方法_第2页
2/13
优化c++执行文件效率的方法_第3页
3/13
优化c++执行文件效率的方法 (1)自定义程序的入口 (2)合并区段 (3)不用调malloc,free 等函数 (3)不用cout 来输出,cin 来输入 (4)如果调用了很多库函数如memset,stycpy 等等 的话,请导入msvcrt.lib,不然编译器会在程序里面 导入静态库,这样的话程序就会大很多。。 (5)window 编程不用mfc... 减少程序运行内存占用量可以调用 SetProcessWorkingSetSize(GetCurrentProcess(),-1,-1); ----------sample.cpp--------------------- #include #include "sample.h" #include "mydll.h" #include "resource.h" //这下面自定义函数入口 #pragma comment(linker, "/ENTRY:EntryPoint") #pragma comment(linker,"/ALIGN:0x400") //设置区段属性,跟区段在内存起始地址 //这里面要加写入的权限,不然程序就运行不了了 //E 为执行,R 为可读,W 为可写 //更多的说明请参见 msdn #pragma comment(linker,"/SECTION:.text,ERW /ALIGN:0x1000") //下面合并区段, #pragma comment(linker,"/merge:.data=.text") #pragma comment(linker,"/merge:.rdata=.text") //下面导入函数 #pragma comment(lib,"mydll.lib") //下面是函数的入口 //得到 WinMain 里面的几个参数 //HINSTANCE hInstance=GetModuleHandle(NULL) //LPSTR lpCmdLine= GetCommandLine() //int nCmdShow 这个可以自己填 void EntryPoint() { HINSTANCE hInstance; hInstance=GetModuleHandle(NULL); Sample pro(hInstance); DialogBoxParam(hInstance,MAKEINTRESOURCE(IDD_DIALOG),NULL,(DLGPROC)Sample::DialogProc,(LPARAM)&pro); } INT_PTR CALLBACK Sample::DialogProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { static Sample *pro; switch(message) { case WM_INITDIALOG: pro=(Sample *)lParam; pro->hwnd=hwnd; pro->Init(); break; case WM_COMMAND: pro->WndPro_Command(wParam,lParam); break; case WM_CLOSE: pro->WndPro_Close(); break; case WM_TIMER: //这里每秒钟触发一次 //来减少内存占用量 //试着在任务管理器里面看一下,sample.exe 内存占用量是不是只有200 多 k,在我这里是这样的 if(wParam==100) { SetProcessWorkingSetSize(GetCurrentProcess(), -1,-1); } break; } return 0; } Sample::Sample(HINSTANCE hi) { ...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

优化c++执行文件效率的方法

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部