dz̸C/C++ÄÚ´æй©¼°Æä¼ì²â¹¤¾ß
¶ÔÓÚÒ»¸öc/c++³ÌÐòÔ±À´Ëµ£¬ÄÚ´æй©ÊÇÒ»¸ö³£¼ûµÄÒ²ÊÇÁîÈËÍ·ÌÛµÄÎÊÌâ¡£ÒѾÓÐÐí¶à¼¼Êõ±»Ñо¿³öÀ´ÒÔÓ¦¶ÔÕâ¸öÎÊÌ⣬±ÈÈçSmart Pointer£¬Garbage CollectionµÈ¡£Smart Pointer¼¼Êõ±È½Ï³ÉÊ죬STLÖÐÒѾ°üº¬Ö§³ÖSmart PointerµÄclass£¬µ«ÊÇËüµÄʹÓÃËƺõ²¢²»¹ã·º£¬¶øÇÒËüÒ²²»Äܽâ¾öËùÓеÄÎÊÌ⣻Garbage Collection¼¼ÊõÔÚJavaÖÐÒѾ±È½Ï³ÉÊ죬µ«ÊÇÔÚc/c++ÁìÓòµÄ·¢Õ¹²¢²»Ë³³©£¬ËäÈ»ºÜÔç¾ÍÓÐÈË˼¿¼ÔÚC++ÖÐÒ²¼ÓÈëGCµÄÖ§³Ö¡£ÏÖʵÊÀ½ç¾ÍÊÇÕâÑùµÄ£¬×÷Ϊһ¸öc/c++³ÌÐòÔ±£¬ÄÚ´æй©ÊÇÄãÐÄÖÐÓÀÔ¶µÄÍ´¡£²»¹ýºÃÔÚÏÖÔÚÓÐÐí¶à¹¤¾ßÄܹ»°ïÖúÎÒÃÇÑéÖ¤ÄÚ´æй©µÄ´æÔÚ£¬ÕÒ³ö·¢ÉúÎÊÌâµÄ´úÂë¡£
¡¡¡¡ÄÚ´æй©µÄ¶¨Òå
¡¡¡¡Ò»°ãÎÒÃdz£ËµµÄÄÚ´æй©ÊÇÖ¸¶ÑÄÚ´æµÄй©¡£¶ÑÄÚ´æÊÇÖ¸³ÌÐò´Ó¶ÑÖзÖÅäµÄ£¬´óСÈÎÒâµÄ£¨ÄÚ´æ¿éµÄ´óС¿ÉÒÔÔÚ³ÌÐòÔËÐÐÆÚ¾ö¶¨£©£¬Ê¹ÓÃÍêºó±ØÐëÏÔʾÊͷŵÄÄÚ´æ¡£Ó¦ÓóÌÐòÒ»°ãʹÓÃmalloc£¬realloc£¬newµÈº¯Êý´Ó¶ÑÖзÖÅäµ½Ò»¿éÄڴ棬ʹÓÃÍêºó£¬³ÌÐò±ØÐ븺ÔðÏàÓ¦µÄµ÷ÓÃfree»òdeleteÊͷŸÃÄÚ´æ¿é£¬·ñÔò£¬Õâ¿éÄÚ´æ¾Í²»Äܱ»ÔÙ´ÎʹÓã¬ÎÒÃǾÍ˵Õâ¿éÄÚ´æй©ÁË¡£ÒÔÏÂÕâ¶ÎС³ÌÐòÑÝʾÁ˶ÑÄÚ´æ·¢Éúй©µÄÇéÐΣº
void MyFunction(int nSize)
{
¡¡char* p= new char[nSize];
¡¡if( !GetStringfrom( p, nSize ) ){
¡¡¡¡MessageBox(“Error”);
¡¡¡¡return;
¡¡}
¡¡…//using the string pointed by p;
¡¡delete p;
}
¡¡¡¡ÀýÒ»
¡¡¡¡µ±º¯ÊýGetStringfrom()·µ»ØÁãµÄʱºò£¬Ö¸ÕëpÖ¸ÏòµÄÄÚ´æ¾Í²»»á±»ÊÍ·Å¡£ÕâÊÇÒ»ÖÖ³£¼ûµÄ·¢ÉúÄÚ´æй©µÄÇéÐΡ£³ÌÐòÔÚÈë¿Ú´¦·ÖÅäÄڴ棬ÔÚ³ö¿Ú´¦ÊÍ·ÅÄڴ棬µ«ÊÇcº¯Êý¿ÉÒÔÔÚÈκεط½Í˳ö£¬ËùÒÔÒ»µ©ÓÐij¸ö³ö¿Ú´¦Ã»ÓÐÊÍ·ÅÓ¦¸ÃÊͷŵÄÄڴ棬¾Í»á·¢ÉúÄÚ´æй©¡£
¡¡¡¡¹ãÒåµÄ˵£¬ÄÚ´æй©²»½ö½ö°üº¬¶ÑÄÚ´æµÄй©£¬»¹°üº¬ÏµÍ³×ÊÔ´µÄй©(resource leak)£¬±ÈÈçºËÐÄ̬HANDLE£¬GDI Object£¬SOCKET£¬ InterfaceµÈ£¬´Ó¸ù±¾ÉÏ˵ÕâЩÓɲÙ×÷ϵͳ·ÖÅäµÄ¶ÔÏóÒ²ÏûºÄÄڴ棬Èç¹ûÕâЩ¶ÔÏó·¢Éúй©×îÖÕÒ²»áµ¼ÖÂÄÚ´æµÄй©¡£¶øÇÒ£¬Ä³Ð©¶ÔÏóÏûºÄµÄÊǺËÐÄ̬Äڴ棬ÕâЩ¶ÔÏóÑÏÖØй©ʱ»áµ¼ÖÂÕû¸ö²Ù×÷ϵͳ²»Îȶ¨¡£ËùÒÔÏà±È֮ϣ¬ÏµÍ³×ÊÔ´µÄй©±È¶ÑÄÚ´æµÄй©¸üΪÑÏÖØ¡£
¡¡¡¡GDI ObjectµÄй©ÊÇÒ»ÖÖ³£¼ûµÄ×ÊԴй©£º
void CMyView::OnPaint( CDC* pDC )
{
¡¡CBitmap bmp;
¡¡CBitmap* pOldBmp;
¡¡bmp.LoadBitmap(IDB_MYBMP);
¡¡pOldBmp = pDC->SelectObject( &bmp );
¡¡…
¡¡if( Something() ){
¡¡¡¡return;
¡¡}
¡¡pDC->SelectObjec
Ïà¹ØÎĵµ£º
µÚ4Õ ÔõÑù²ÅÄܱ£Ö¤²âÊÔЧ¹û£¿
4.1 ºâÁ¿²âÊÔЧ¹ûµÄ»ù±¾Ö¸±ê£º°×ºÐ¸²¸Ç
ºâÁ¿²âÊÔЧ¹ûµÄ»ù±¾Ö¸±êÊǰ׺и²¸ÇÂÊ£¬¼´Í³¼Æ²âÊÔ¶Ô´úÂëÂß¼µ¥Î»µÄ¸²¸Ç×´¿ö¡£´úÂëµÄÂß¼µ¥Î»Ö÷ÒªÓУºÓï¾ä(¿é)£¬Ìõ¼þ¡¢Åж¨¡¢·ÖÖ§¡¢Â·¾¶¡£³£Óõİ׺и²¸ÇÓÐÁùÖÖ£ºÓï¾ä¸²¸Ç¡¢Ìõ¼þ¸²¸Ç¡¢·ÖÖ§¸²¸Ç¡¢Åж¨Ìõ¼þ¸²¸Ç¡¢ÐÞÕýÅж¨Ìõ¼þ¸²¸Ç¡¢º ......
1 Ç°ÑÔ
¡¡³¤ÆÚÒÔÀ´£¬¹ã´ó³ÌÐòԱΪµ½µ×ÊÇʹÓÃClient/Server£¬»¹ÊÇʹÓÃBrowser/Server½á¹¹ÕùÂÛ²»ÐÝ£¬ÔÚÕâЩÕùÂÛµ±ÖÐ,C/S½á¹¹µÄ³ÌÐò¿Éά»¤ÐԲ²¼ÖÃÀ§ÄÑ£¬Éý¼¶²»·½±ã£¬Î¬»¤³É±¾¸ß¾ÍÊÇÒ»¸öÏ൱ÖØÒªµÄÒòËØ¡£ÓкܶàÆóÒµÓû§¾ÍÊÇÒòΪÕâ¸öÔÒò¶ø·ÅÆúʹÓÃC/S¡£È»¶øµ±Ò»¸öÓ¦ÓñØÐëҪʹÓÃC/S½á¹¹²ÅÄܺܺõÄʵÏÖÆ书ÄܵÄʱ ......
2010Äê05ÔÂ1ºÅ |
23:15·ÖÀࣺ¹ÜÀíά»¤
, Õï¶Ï°¸Àý
| ±à¼
| ±êÇ©£º11g
¡¢dbca
¡¢netca
| 13
views
±¾Îijö×Ô “inthirties£¨ÄÐ
ÈËÈýÊ®£©
”²©¿Í£¬×ªÔØÇëÎñ±Ø×¢Ã÷×÷Õߺͱ£Áô³ö´¦¡£
¿Í»§×°ºÃÁËOracle£¬°²×°³É¹¦ÁË£ ......
//ΪÁ˺ÍDSP¼æÈÝ£¬TSint64ºÍTUint64ÉèÖóÉTSint40ºÍTUint40Ò»ÑùµÄÊý
//½á¹ûVCÖл¹ÊÇÈÏΪÊÇ32λµÄ£¬ÏÔÈ»²»ºÏÊÊ
//typedef signed long int TSint64;
//typedef unsigned long int TUint64; &nb ......
1.ʱ¼ä±íʾ
ÔÚ³ÌÐòµ±ÖÐ,ÎÒÃǾ³£ÒªÊä³öϵͳµ±Ç°µÄʱ¼ä,±ÈÈçÎÒÃÇʹÓÃdateÃüÁîµÄÊä³ö½á¹û.Õâ¸öʱºòÎÒÃÇ¿ÉÒÔʹÓÃÏÂÃæÁ½¸öº¯Êý:
#include <sys/time.h>
time_t time(time_t *tloc);
char *ctime(const time_t *clock);
timeº¯Êý·µ»Ø´Ó1970Äê1ÔÂ1ÈÕ0 ......