VC++³ÌÐòÔ±Ó¦µ±ÈçºÎÔĶÁADOÎĵµ
VC++³ÌÐòÔ±Ó¦µ±ÈçºÎÔĶÁADOÎĵµ
¡¶ADO API²Î¿¼¡·ÓÃVBµÄÓï·¨ÃèÊöÁËADO APIµÄÄÚÈÝ¡£µ«ADO³ÌÐòԱȴʹÓÃ×Ų»Í¬µÄ±à³ÌÓïÑÔ£¬±ÈÈçVB,VC++£¬VJ++¡£¶Ô´Ë¡¶ADO for VC++µÄÓï·¨Ë÷Òý¡·ÌṩÁË·ûºÏVC++Óï·¨¹æ·¶µÄÏêϸÃèÊö£¬°üÀ¨¹¦ÄÜ¡¢²ÎÊý¡¢Òì³£´¦ÀíµÈµÈ¡£
ADO»ùÓÚÈô¸ÉµÄCOM½è¿ÚʵÏÖ£¬Òò´ËËüµÄʹÓöÔÓÚÒ»¸öÕý½øÐÐCOM±à³ÌµÄ³ÌÐòÔ±¶øÑÔ¸ü¼òµ¥¡£±ÈÈ磬¼¸ºõËùÓÐʹÓÃCOMµÄϸ½Ú¶ÔÓÚVB³ÌÐòÔ±¶øÑÔ¶¼ÊÇÒþ²ØÁ˵쬵«¶ÔÓÚVC++³ÌÐòÔ±¶øÑÔÈ´ÒªÌØ±ð×¢Òâ¡£ÒÔÏÂÊǶÔÓÚCºÍC++³ÌÐòԱʹÓÃADOºÍ#importָʾ·û·½ÃæµÄ¸ÅÊö£¬Ö÷ÒªÃèÊöÁËCOMʹÓõÄÊý¾ÝÀàÐÍ(Variant, BSTR, and SafeArray)ºÍÒì³£µÄ´¦Àí(_com_error)¡£
ʹÓÃ#import±àÒëָʾ·û
#import±àÒëָʾ·ûʹʹÓÃADOµÄ·½·¨ÓëÊôÐÔ¼òµ¥»¯¡£Õâ¸öָʾ·ûÐèÒªÒ»¸öÀàÐÍ¿âÎļþÃû£¬±ÈÈçADO.dll(Msado15.dll)£¬²¢Éú³É¶ÔÓ¦µÄÍ·Îļþ£¬ÆäÖаüÀ¨¶¨ÒåµÄÀàÐÍ¡¢½Ó¿ÚµÄÖÇÄÜ»¯Ö¸Õë¡¢³£Á¿¡£²¢ÇÒËùÓеĽӿڶ¼±»·â×°³ÉÀà¡£
¶ÔÓÚÀàÖеÄÿ¸ö²Ù×÷£¨»ò³Æ·½·¨¡¢ÊôÐÔµ÷Óã©£¬¶¼ÓÐÒ»¸öÉùÃ÷ÒÔ±£Ö¤ÄÜÖ±½Óµ÷ÓÃËü£¨»ò³Æ×÷²Ù×÷µÄÔ´ÐÎʽ£©£¬ÒÔ¼°ÁíÒ»¸öÉùÃ÷À´µ÷ÓÃÕâ¸öÔ´²Ù×÷²¢ÔÚ²Ù×÷ʧ°ÜʱÅ׳öÒ»¸öCOM´íÎó¡£Èç¹û²Ù×÷ÊÇÒ»¸öÊôÐÔ£¬ÄÇô±àÒëָʾ·û¿ÉÒÔΪ¸Ã²Ù×÷´´½¨Ò»¸ö¿É½»»¥µÄÀàËÆVBµÄÓï·¨ÐÎʽ¡£
·µ»Ø/ÉèÖÃÊôÐԵIJÙ×÷ÓжÔÓ¦µÄÐÎʽ»¯µÄÃû×Ö—GetProperty/PutPropert£¬¶øÉèÖÃÒ»¸öÖ¸Ïòij¸öADO¶ÔÏóµÄÖ¸ÕëÐÍÊôÐÔֵʱÔòÊÇPutRefProperty¡£Ä㽫ʹÓÃÈçϵÄÐÎʽ¶ÁдÊôÐÔµÄÖµ£º
variable = objectPtr->GetProperty(); // ¶ÁÈ¡ÊôÐÔµÄÖµ
objectPtr->PutProperty(value); // ÉèÖÃÊôÐÔµÄÖµ
objectPtr->PutRefProperty(&value); // ÉèÖÃÒ»¸öÖ¸ÕëÐ͵ÄÊôÐÔµÄÖµ
Ö±½ÓʹÓÃÊôÐÔ
__declspec(property...)±àÒëָʾ·ûÊÇ΢Èí¶¨ÒåµÄÒ»¸öÕë¶ÔCÓïÑÔµÄÀ©Õ¹£¬Ê¹Ò»¸öº¯ÊýÏóÒ»¸öÊôÐÔÄÇÑù±»Ê¹Óá£ÕâÑùÄã¾Í¿ÉÒÔ²ÉÓÃÈçϵÄÓï·¨ÐÎʽÏóÔÚʹÓÃVBÒ»Ñù¶Áдһ¸öÊôÐÔµÄÖµ£º objectPtr->property = value; // ÉèÖÃÊôÐÔµÄÖµ
variable = objectPtr->property; // ¶ÁÈ¡ÊôÐÔµÄÖµ
__declspec(property...)±àÒëָʾ·ûÖ»ÄÜÕë¶ÔÊôÐԵĶÁдº¯ÊýʹÓ㬲¢¸ù¾ÝÊôÐÔÊÇ·ñ¿É¹©¶Áд×Ô¶¯Éú³É¶ÔÓ¦µÄµ÷ÓÃÐÎʽ¡£Ã¿¸öÊôÐÔ¿ÉÄÜÓÐGetProperty, PutProperty,PutRefPropertyÈý¸öº¯Êý£¬µ«Õâ¸ö±àÒë·ûÖ»ÄÜÉú³ÉÆäÖеÄÁ½ÖÖ½»»¥ÐÎʽ¡£±ÈÈ磬Command¶ÔÏóµÄActiveConnectionÊôÐÔÓÐ
Ïà¹ØÎĵµ£º
Technorati ±êÇ©: C++ ÔÎĵØÖ·£ºhttp://www.byvoid.com/blog/c-int64/ ÔÚC/C++ÖУ¬64ΪÕûÐÍÒ»Ö±ÊÇÒ»ÖÖûÓÐÈ·¶¨¹æ·¶µÄÊý¾ÝÀàÐÍ¡£ÏÖ½ñÖ÷Á÷µÄ±àÒëÆ÷ÖУ¬¶Ô64ΪÕûÐ͵ÄÖ§³ÖÒ²ÊDZê×¼²»Ò»£¬ÐÎ̬¸÷Òì¡£Ò»°ãÀ´Ëµ£¬64λÕûÐ͵͍Ò巽ʽÓÐlong longºÍ__int64Á½ÖÖ(VC»¹Ö§³Ö_int64)£¬¶øÊä³öµ½±ê×¼Êä³ö·½Ê½ÓÐprintf(¡°%lld¡±,a)£¬printf ......
LinuxÏÂC++¿ª·¢¹¤¾ß½éÉÜ
¡¡¡¡¸ÅÊö
¡¡¡¡¾ÍC£«£«¿ª·¢¹¤¾ß¶øÑÔ£¬ÓëWindowsÏÂ΢Èí£¨VC£¬ VS2005µÈ£©Ò»Í³ÌìÏÂÏà±È£¬Linux/UnixÏÂC£«£«¿ª·¢£¬¿ÉνÎ廨°ËÃÅ£¬¸÷ʽ¸÷Ñù¡£Emacs, vi, eclipse, anjuta£¬kdevelopµÈ²ã³ö²»Çî¡£
¡¡¡¡WindowsÏ£¬¿ª·¢¹¤¾ß¶àÒÔ¼¯³É¿ª·¢»·¾³IDEµÄÐÎʽչÏÖ¸ø×îÖÕÓû§¡£ÀýÈ磬VS2005¼¯³ ......
C/C++ Reference
http://www.cppreference.com/
C++ Library Reference
http://www.cplusplus.com/ref/
Standard C++ Library Class Reference at Rogue Wave
http://www.roguewave.com/support/docs/hppdocs/stdref/
Dink ......
ÔÚPOSIXÖУ¬±ãÓÐ×ÅÖ§³ÖÕýÔò±í´ïʽµÄϵͳº¯Êý¡£GNU/LinuxÓÐÁ½Ì׿â¿ÉÓÃÓÚÕýÔò±í´ïʽ±à³Ì£ºPOSIX¿âºÍPCRE¿â¡£Ç°Õß²»ÐèÒªµ¥¶À°²×°£¬Ò»°ãÐèÇó»¹ÊÇÄÜÂú×ãµÄ£¬ËÙ¶ÈÉÔÂýЩ¡£ºóÕßÊǾøºÊ¢ÃûµÄPerlÕýÔò±í´ïʽ¿â£¬¹¦ÄÜÇ¿´ó£¬Æ¥ÅäËٶȿ죬²»¹ý¿ÉÄÜÐèÒªµ¥¶À°²×°¡£
int regcomp (regex_t *compiled, const char *pattern, int cflags)
& ......