ÉîÈëÀí½âC/C++º¯ÊýÖ¸Õë
ת£ºhttp://school.ogdev.net/ArticleShow.asp?categoryid=10&id=6019
º¯ÊýÖ¸ÕëÊý×éµÄÃîÓÃ
±ÊÕßÔÚ¿ª·¢Ä³Èí¼þ¹ý³ÌÖÐÓöµ½ÕâÑùÒ»¸öÎÊÌ⣬ǰ¼¶Ä£¿é´«¸øÎÒ¶þ½øÖÆÊý¾Ý£¬ÊäÈë²ÎÊýΪ char* bufferºÍ int length£¬bufferÊÇÊý¾ÝµÄÊ×µØÖ·£¬length±íʾÕâÅúÊý¾ÝµÄ³¤¶È¡£Êý¾ÝµÄÌØµãÊÇ£º³¤¶È²»¶¨£¬ÀàÐͲ»¶¨£¬ÓɵÚÒ»¸ö×Ö½Ú£¨buffer[0]£©±êʶ¸ÃÊý¾ÝµÄÀàÐÍ£¬¹²ÓÐ256£¨28 £©ÖÖ¿ÉÄÜÐÔ¡£ÎÒµÄÈÎÎñÊDZØÐë¶ÔÿһÖÖ¿ÉÄܳöÏÖµÄÊý¾ÝÀàÐͶ¼Òª×÷´¦Àí£¬²¢ÇÒÎÒµÄÄ£¿é°üº¬Èô¸É¸öº¯Êý£¬ÔÚÿ¸öº¯ÊýÀïÃæ¶¼Òª×÷ÀàËÆµÄ´¦Àí¡£Èô°´Í¨³£×ö·¨£¬»áд³öÈçÏ´úÂ룺
void MyFuntion( char* buffer, int length )
{
¡¡¡¡¡¡¡¡__int8 nStreamType = buffer[0];
¡¡¡¡¡¡¡¡switch( nStreamType )
¡¡¡¡¡¡¡¡{
¡¡¡¡¡¡¡¡¡¡¡¡¡¡case 0:
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡function1();
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡break;
¡¡¡¡¡¡¡¡¡¡¡¡¡¡case 1:
¡¡¡¡¡¡¡¡¡¡¡¡¡¡......
¡¡¡¡¡¡¡¡¡¡¡¡¡¡case 255:
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡function255();
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡break;
¡¡¡¡¡¡¡¡¡¡}
}
Èç¹û°´ÕÕÕâÖÖ·½·¨Ð´ÏÂÈ¥£¬ÄÇôÔÚÎÒµÄÿһ¸öº¯ÊýÀïÃæ£¬¶¼±ØÐë×÷Èç´Ë¶àµÄÅжϣ¬Ð´³öµÄ´úÂë¿Ï¶¨ºÜ³¤£¬²¢ÇÒÿһ´Î´¦Àí£¬¶¼Òª×÷Ðí¶à´ÎÅжÏÖ®ºó²ÅÕÒµ½ÕýÈ·µÄ´¦Àíº¯Êý£¬´úÂëµÄÖ´ÐÐЧÂÊÒ²²»¸ß¡£Õë¶ÔÉÏÊöÎÊÌ⣬ÎÒÏëµ½ÁËÓú¯ÊýÖ¸ÕëÊý×éµÄ·½·¨½â¾öÕâ¸öÎÊÌâ¡£
¡¡¡¡º¯ÊýÖ¸ÕëµÄ¸ÅÄÔÚ̶ºÆÇ¿ÏÈÉúµÄCÓïÑÔ³ÌÐòÉè¼ÆÕâ±¾¾µäµÄ½Ì³ÌÖÐÌá¼°¹ý£¬ÔÚ´ó¶àÊýÇé¿öÏÂÎÒÃÇʹÓò»µ½£¬Ò²ºöÂÔÁËËüµÄ´æÔÚ¡£º¯ÊýÃûʵ¼ÊÉÏÒ²ÊÇÒ»ÖÖÖ¸Õ룬ָÏòº¯ÊýµÄÈë¿ÚµØÖ·£¬µ«ËüÓÖ²»Í¬ÓÚÆÕͨµÄÈçint*¡¢double*Ö¸Õ룬¿´ÏÂÃæµÄÀý×ÓÀ´Àí½âº¯ÊýÖ¸ÕëµÄ¸ÅÄ
int funtion( int x, int y );
void main ( void )
{
¡¡¡¡¡¡int (*fun) ( int x, int y );
¡¡¡¡¡¡int a = 10, b = 20;
¡¡¡¡¡¡function( a, b );
¡¡¡¡¡¡fun = function;
¡¡¡¡¡¡£¨*fun£©( a, b );
¡¡¡¡¡¡¡¡……
}
¡¡¡¡Óï¾ä1¶¨ÒåÁËÒ»¸öº¯Êýfunction£¬ÆäÊäÈëΪÁ½¸öÕûÐÍÊý£¬·µ»ØÒ²ÎªÒ»¸öÕûÐÍÊý£¨ÊäÈë²ÎÊýºÍ·µ»ØÖµ¿ÉΪÆäËüÈκÎÊý¾ÝÀàÐÍ£©£»Óï¾ä3¶¨ÒåÁËÒ»¸öº¯ÊýÖ¸Õ룬Óëint*»òdouble*¶¨ÒåÖ¸Õ벻ͬµÄÊÇ£¬º¯ÊýÖ¸ÕëµÄ¶¨Ò屨Ðëͬʱָ³öÊäÈë²ÎÊý£¬±íÃ÷ÕâÊÇÒ»¸öº¯ÊýÖ¸Õ룬²¢ÇÒ*funÒ²±ØÐëÓÃÒ»¶ÔÀ¨ºÅÀ¨ÆðÀ´£»Óï¾ä6½«º¯ÊýÖ¸Õ븳ֵΪfuntion£¬Ç°ÌáÌõ¼þÊÇ*funºÍfunctionµÄÊäÈë²ÎÊýºÍ·µ»ØÖµ±ØÐë±£³ÖÒ»Ö¡£Óï¾ä5Ö±½Óµ÷Óú¯Êýfunction£¨£©£¬Óï¾ä7Êǵ÷Óú¯ÊýÖ¸Õ룬¶þÕßµÈЧ¡£
¡¡¡¡µ±È»´ÓÉÏÊöÀý×Ó¿´²»³öº¯ÊýÖ¸ÕëµÄÓŵ㣬Ä
Ïà¹ØÎĵµ£º
ϵͳ»·¾³£ºWindows 7
Èí¼þ»·¾³£ºVisual C++ 2008 SP1 +SQL Server 2005
±¾´ÎÄ¿µÄ£º±àдһ¸öº½¿Õ¹ÜÀíϵͳ
ÕâÊÇÊý¾Ý¿â¿Î³ÌÉè¼ÆµÄ³É¹û£¬ËäÈ»³É¼¨²»¼Ñ£¬µ«ÊÇ×÷ΪÎÒÓÃVC++ ÒÔÀ´±àдµÄ×î´ó³ÌÐò»¹ÊÇ´«µ½ÍøÉÏ£¬ÒÔ¹©²Î¿¼¡£ÓÃVC++ ×öÊý¾Ý¿âÉè¼Æ²¢²»ÈÝÒ×£¬µ«Ò²²»ÊDz»¿ÉÄÜ¡£ÒÔÏÂÊÇÎҵijÌÐò½çÃæ£¬ºóÃæ ......
const ÊÇÔÚ³ÌÐòÖзdz£ÖØÒª¡£ÔÚÕâÀïÎÒ×öһϼòµ¥µÄ½éÉÜ¡£
1.const »ù´¡
constÓÐÁ½ÖÖÐÎʽ:
a) const Type var;
È磺int a =10;const int * var=&a; ÄÇôvar¾ÍÊdz£Á¿Ö¸Õ룬±íÃ÷ÊÇÖ¸Ïò³£Á¿µÄÖ¸Õ룬Ҳ¾ÍÊÇ˵aµÄÖµ²»Äܸı䡣
......
1¡¢classµÄ¶¨ÒåÒ»¶¨ÒªÔÚºóÃæ¼Ó“£»”
2¡¢ÓÃcoutʱҪÔÚmainº¯Êýǰ¼Ó using namespace std;
3¡¢³öÏÖ undefined reference to `std::ios_base::Init::Init() ÌáʾµÄ»°£¬ÎÊÌâÊÇgcc±àÒëÆ÷³öÏֵ쬽â¾öµÄ°ì·¨ÊÇ£ºÔÚlinuxϱàÒëc++ ³ÌÐòҪʹÓÃg++ ±àÒëÆ÷,Èç¹ûÄãÒªÊÇʹÓÃgcc±àÒëÆ÷¾Í»áÓÐÉÏÃæµÄ±¨´íÐÅÏ¢,Ö»ÒªÔÚÔÚgccºó¼Ó ......
Ò»¡¢C++·þÎñÆ÷¶Ë
£¨ÓõÄÊÇVisual Studio 2008£¨05£¬03µÄÓ¦¸ÃÒ²¿ÉÒÔ£¬VC++µÄ¿ÉÄÜÐèÒªÉÔ΢¸Ä¶¯£©£©
´úÂëÈçÏ£º
#include <winsock2.h>
#include <stdio.h>
#include <windows.h>
#include <iostream>
using namespace std;
#pragma comment(lib,"ws2_32.lib")
void main(){ ......
1.¸ÅÂÛ
¡¡ÔËÐÐʱ¿âÊdzÌÐòÔÚÔËÐÐʱËùÐèÒªµÄ¿âÎļþ£¬Í¨³£ÔËÐÐʱ¿âÊÇÒÔLIB»òDLLÐÎʽÌṩµÄ¡£CÔËÐÐʱ¿âµ®ÉúÓÚ20ÊÀ¼Í70Äê´ú£¬µ±Ê±µÄ³ÌÐòÊÀ½ç»¹ºÜµ¥´¿£¬Ó¦ÓóÌÐò¶¼Êǵ¥Ï̵߳쬶àÈÎÎñ»ò¶àÏ̻߳úÖÆÔÚ´Ëʱ»¹ÊôÓÚйÛÄî¡£ËùÒÔÕâ¸öʱÆÚµÄCÔËÐÐʱ¿â¶¼Êǵ¥Ï̵߳ġ£
Ëæ×ŲÙ×÷ϵͳ¶àÏ̼߳¼ÊõµÄ·¢Õ¹£¬×î³õµÄCÔËÐÐʱ¿âÎÞ·¨Âú×ã³ÌÐòµÄÐèÇó£ ......