C C++
C++11中的Move語義和右值引用
摘要:
C++一直致力于生成快速的程序。不幸的是,直到C++11之前,這里一直有一個降低C++程序速度的頑癥:臨時變量的創建。有時這些臨時變量可以被編譯器優化(例如返回值優化),但是這并不總是可行的,通常這會導致高昂的對象復制成本。我說的是怎么回事呢?
閱讀全文
posted @
2016-03-15 15:49 日需博客 閱讀(612) |
評論 (0) 編輯
傳奇3.0 VC++最終正式版本源碼
摘要: 傳奇3.0 (evil’s illusion Server)
韓國正式版本 vc++ 源碼
GameServer VC++源代碼,包括地圖,腳本,人物處理,協議加密,帶數據庫,由于源碼為商業性質的,請使用者注意其版權和不要擅自公開發布和傳播源碼。
WEMADE 公司于 Delphi 版本服務器端程序后,修改為 VC++ 版本。
可用VC++ 6.0 或 VC.net 編譯;學習網絡游戲開發的朋友又一個絕好的源碼。
閱讀全文
posted @
2011-09-28 09:14 日需博客 閱讀(4601) |
評論 (2) 編輯
SQLite3 C/C++ 開發接口簡介
摘要: 1.0 總覽
SQLite3是SQLite一個全新的版本,它雖然是在SQLite 2.8.13的代碼基礎之上開發的,但是使用了和之前的版本不兼容的數據庫格式和API. SQLite3是為了滿足以下的需求而開發的:
l 支持UTF-16編碼.
l 用戶自定義的文本排序方法.
l 可以對BLOBs字段建立索引.
因此為了支持這些特性我改變了數據庫的格式,建立了一個與之前版本不兼容的3.0版. 至于其他的兼容性的改變,例如全新的API等等,都將在理論介紹之后向你說明,這樣可以使你最快的一次性擺脫兼容性問題.
閱讀全文
posted @
2011-09-21 15:12 日需博客 閱讀(1086) |
評論 (0) 編輯
修改const變量的疑問
摘要: 2個指針指向的地址和變量地址一樣,值為什么不一樣呢?疑惑。
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
const int a=10;
const int *p1=&a;
int *p2=const_cast
(p1);
if (&a==p1)
{
printf("&a==p1\n");
}
else
{
printf("&a!=p1\n"); 閱讀全文
posted @
2011-09-10 21:21 日需博客 閱讀(2227) |
評論 (7) 編輯
GDI+ for VC6 MFC
摘要: 五年前,筆者曾在C#中使用GDI+開發程序,對其頗有好感。這一段時間,在使用VC6作圖時,深切感會到使用GDI的種種不便,不比GDI+好用。沉迷于VC6的高效與輕便,不想只為了一個GDI+而被迫安裝沉甸甸的.Net,便產生了一個疑問,難道GDI+只能用于.Net中嗎?
訪問微軟的MSDN網站后,隨即解開了此謎。于是便有了此文 – 如何在VC6 MFC中使用GDI+。
閱讀全文
posted @
2011-08-23 09:10 日需博客 閱讀(2879) |
評論 (6) 編輯
ARP欺騙 C++實現
摘要: 前段時間我們學校的的網絡總是出現掉線的問題,后來說是ARP欺騙,要我們用ANTIARPSNIFFER。小弟不才,
也想搞清楚這個ARP欺騙到底是個什么東西。于是在網上查了點資料,看了點文檔。也算是DIY了一個出來,而
且可以不被ANTIARPSNIFFER發現的讓對方主機在網絡中死掉。于是把這個小東西貼出來讓大家一起把玩一下。
在下菜鳥一只,還請高手指教
參考資料:《TCP/IP詳解II:實現》,《WINPCAP 3.0 DOC》,《交換網絡中的嗅探和ARP欺騙》(一位叫RefDom
的大哥很久前寫的帖子)
閱讀全文
posted @
2011-08-19 11:55 日需博客 閱讀(4935) |
評論 (0) 編輯
Windows平臺下的內存管理
摘要: 1. Windows平臺下主要的內存管理途徑
申請
釋放
new
delete
malloc
free
CoTaskMemAlloc
CoTaskMemFree
IMalloc::alloc
IMalloc/free
GlobalAlloc
GlobalFree
LocalAlloc
LocalFree
HeapAlloc
HeapFree
VirtualAlloc
VirtualFree
閱讀全文
posted @
2011-08-15 09:21 日需博客 閱讀(481) |
評論 (0) 編輯
malloc,new,VirtualAlloc,HeapAlloc性能(速度)比較
摘要: 這里比較的VC++編譯的C++代碼中的性能
我用的是VC6.0測試的
就不介紹這幾個的用法了
我寫了一段簡單的測試代碼
測試結果是:
malloc:390
new:391
VirtualAlloc:454
HeapAlloc:47
閱讀全文
posted @
2011-08-15 09:19 日需博客 閱讀(1372) |
評論 (2) 編輯
VC++下使用ADO編寫數據庫程序
摘要: 準備:
(1)、引入ADO類
#import "c:\program files\common files\system\ado\msado15.dll"
no_namespace
rename ("EOF", "adoEOF")
(2)、初始化COM
在MFC中可以用AfxOleInit();非MFC環境中用:
CoInitialize(NULL);
CoUnInitialize();
閱讀全文
posted @
2011-08-09 14:21 日需博客 閱讀(345) |
評論 (0) 編輯
GUI程序也能使用控制臺窗口
摘要: 很多時候,調試GUI程序是很不方便的,通常的做法是使用MessageBox,但是作為一個模態窗口,它經常產生不必要的消息,比如killfocus, setfocus或者paint,從而影響調試的執行過程。當然,使用vc的調試器也不錯,但是這樣也很容易造成窗口切換從而產生干擾消息。
因此,如果能像在控制臺程序里那樣使用cin/cout對象或printf族函數,會使得調試過程方便得多。而通常,windows是不會為GUI程序產生單獨的命令行窗口的。所以我們是看不到使用標準輸入輸出流輸出的東西的。既然系統不提供,那就自己動手“造”出一個來吧!
下面是一個簡單的控制臺窗口對象,它可以為你的程序創建一個命令行窗口,并將stdout,stdin和stderr重定向到這個命令行窗口。在程序中建立一個這樣的對象之后,就可以直接使用cin/cout/*printf來操縱這個新的命令行窗口了!5 f8 I$ l4 o- b3 L, m% h
閱讀全文
posted @
2011-08-09 13:57 日需博客 閱讀(612) |
評論 (0) 編輯
位運算的用處搜集
摘要: 位運算應用口訣
清零取反要用與,某位置一可用或
若要取反和交換,輕輕松松用異或
移位運算
要點 1 它們都是雙目運算符,兩個運算分量都是整形,結果也是整形。
2 " < <" 左移:右邊空出的位上補0,左邊的位將從字頭擠掉,其值相當于乘2。
3 ">>"右移:右邊的位被擠掉。對于左邊移出的空位,如果是正數則空位補0,若為負數,可能補0或補1,這取決于所用的計算機系統。
4 ">>>"運算符,右邊的位被擠掉,對于左邊移出的空位一概補上0。
閱讀全文
posted @
2011-08-08 13:29 日需博客 閱讀(276) |
評論 (0) 編輯
介紹LuaPlus: 好用的Lua For C++擴展
摘要: LuaPlus是Lua的C++增強,也就是說,LuaPlus本身就是在Lua的源碼上進行增強得來的。用它與C++進行合作,是比較好的一個選擇。
LuaPlus目前版本為:LuaPlus for Lua 5.01 Distribution Build 1080 (February 28, 2004)。大家可以到http://luaplus.org/ 站點下載:
源碼 (http://wwhiz.com/LuaPlus/LuaPlus50_Build1081.zip)
目標碼 (http://wwhiz.com/LuaPlus/LuaPlus50_Build1081_Win32Binaries.zip)
介紹LuaPlus: 好用的Lua For C++擴展 沐楓網志
閱讀全文
posted @
2011-08-08 11:36 日需博客 閱讀(571) |
評論 (1) 編輯
json格式入門和總結
摘要: 數據交換的格式,從結構上看,所有的數據(data)最終都可以分解成三種類型:
第一種類型是標量(scalar),也就是一個單獨的字符串(string)或數字(numbers),比如"北京"這個單獨的詞。
第二種類型是序列(sequence),也就是若干個相關的數據按照一定順序并列在一起,又叫做數組(array)或列表(List),比如"北京,上海"。
第三種類型是映射(mapping),也就是一個名/值對(Name/value),即數據有一個名稱,還有一個與之相對應的值,這又稱作散列(hash)或字典(dictionary),比如"首都:北京"。
閱讀全文
posted @
2011-08-08 11:07 日需博客 閱讀(417) |
評論 (0) 編輯
修改IAT實現本進程API HOOK
摘要: //修改IAT實現本進程API HOOK
//coded by xicao
//QQ:327062448
//E-MAIL:xicao54007@sina.com
#include
#include //ImageDirectoryEntryToData
#pragma comment(lib,"imagehlp.lib")
/************************************************************/
char *szModName = NULL ;
char *szHacked = "不好意思hook到了!" ;
DWORD dwHookFun ;
DWORD dwHookApiAddr;
PIMAGE_IMPORT_DESCRIPTOR pImportDesc ;
PIMAGE_THUNK_DATA32 pThunk;
U 閱讀全文
posted @
2011-08-08 11:03 日需博客 閱讀(1473) |
評論 (0) 編輯
Full C C++ Archive