VC++ÖÐʹÓÃADO·½Ê½²Ù×÷ACCESSÊý¾Ý¿â
ADO(ActiveX Data
Object)ÊÇMicrosoftÊý¾Ý¿âÓ¦ÓóÌÐò¿ª·¢µÄнӿڣ¬Êǽ¨Á¢ÔÚOLE DBÖ®Éϵĸ߲ãÊý¾Ý¿â·ÃÎʼ¼Êõ£¬¼´Ê¹Äã¶ÔOLE
DB£¬COM²»Á˽âÒ²ÄÜÇáËɶԸ¶ADO,ÒòΪËü·Ç³£¼òµ¥Ò×Óã¬ÉõÖÁ±ÈÄãÒÔÍùËù½Ó´¥µÄODBC API¡¢DAO¡¢RDO¶¼ÒªÈÝÒ×ʹÓ㬲¢²»Ê§Áé»îÐÔ¡£
¡¡¡¡ADO(ActiveX Data Object)ÊÇMicrosoftÊý¾Ý¿âÓ¦ÓÃ
³ÌÐò
¿ª·¢µÄнӿڣ¬Êǽ¨Á¢ÔÚOLE DBÖ®Éϵĸ߲ãÊý¾Ý¿â·ÃÎʼ¼Êõ£¬¼´Ê¹Äã¶ÔOLE
DB£¬COM²»Á˽âÒ²ÄÜÇáËɶԸ¶ADO,ÒòΪËü·Ç³£¼òµ¥Ò×Óã¬ÉõÖÁ±ÈÄãÒÔÍùËù½Ó´¥µÄODBC
API¡¢DAO¡¢RDO¶¼ÒªÈÝÒ×ʹÓ㬲¢²»Ê§Áé»îÐÔ¡£±¾ÎÄÏêϸµØ½éÉÜÔÚVisual C++¿ª·¢»·¾³ÏÂÈçºÎʹÓÃADOÀ´½øÐÐÊý¾Ý¿âÓ¦ÓÃ
³ÌÐò
¿ª·¢¡£
¡¡¡¡Ò»¡¢ÊµÏÖ·½·¨
¡¡¡¡ÍòÊ¿ªÍ·ÄÑ£¬ÈκÎÒ»ÖÖм¼Êõ¶ÔÓÚ³õѧÕßÀ´Ëµ×îÖØÒªµÄ»¹ÊÇ"ÈëÃÅ"£¬ÕÆÎÕÆäÒªµã¡£ÈÃÎÒÃÇÀ´¿´¿´ADOÊý¾Ý¿â¿ª·¢µÄ
»ù±¾Á÷³Ì°É£¡ËüµÄ»ù±¾²½ÖèÈçÏ£º
¡¡¡¡£¨1£©³õʼ»¯COM¿â£¬ÒýÈëADO¿â¶¨ÒåÎļþ
¡¡¡¡£¨2£©ÓÃConnection¶ÔÏóÁ¬½ÓÊý¾Ý¿â
¡¡¡¡£¨3£©ÀûÓý¨Á¢ºÃµÄÁ¬½Ó£¬Í¨¹ýConnection¡¢Command¶ÔÏóÖ´ÐÐSQLÃüÁ»òÀûÓÃ
Recordset¶ÔÏóÈ¡µÃ½á¹û¼Ç¼¼¯½øÐвéѯ¡¢´¦Àí¡£
¡¡¡¡£¨4£©Ê¹ÓÃÍê±Ïºó¹Ø±ÕÁ¬½ÓÊͷŶÔÏó¡£
¡¡¡¡ÏÂÃæÎÒÃǽ«Ïêϸ½éÉÜÉÏÊö²½Öè²¢¸ø³öÏà¹Ø´úÂë¡£
¡¡¡¡1¡¢COM¿âµÄ³õʼ»¯
¡¡¡¡ÎÒÃÇ¿ÉÒÔʹÓÃAfxOleInit()À´³õʼ»¯COM¿â£¬ÕâÏ×÷ͨ³£ÔÚ
CWinApp::InitInstance()µÄÖØÔØº¯ÊýÖÐÍê³É£¬Çë¿´ÈçÏ´úÂë:
BOOL CADOTest1App::InitInstance()
{
¡¡AfxOleInit();
¡¡......
}
¡¡¡¡2¡¢ÓÃ#importÖ¸ÁîÒýÈëADOÀàÐÍ¿â
¡¡¡¡ÎªÁËÒýÈëADOÀàÐͿ⣬ÐèÒªÔÚÏîÄ¿µÄstdafx.hÎļþÖмÓÈëÈçÏÂÓï¾ä£º
#import "c:\program files\common
files\system\ado\msado15.dll"
no_namespace rename("EOF","adoEOF")
¡¡¡¡ÕâÒ»Óï¾äÓкÎ×÷ÓÃÄØ£¿Æä×îÖÕ×÷ÓÃͬÎÒÃÇÒѾʮ·ÖÊìϤµÄ#includeÀàËÆ£¬±àÒëµÄʱºòϵͳ»áΪÎÒÃÇÉú³É
msado15.tlh,ado15.tliÁ½¸öC++Í·ÎļþÀ´¶¨ÒåADO¿â¡£
¡¡¡¡ÐèÒª¶ÁÕßÅóÓÑ×¢ÒâµÄÊÇ£ºÄúµÄ¿ª·¢»·¾³ÖÐmsado15.dll²»Ò»¶¨ÔÚÕâ¸öĿ¼Ï£¬Ç밴ʵ¼ÊÇé¿öÐÞ¸Ä;ÔÚ±àÒëµÄ
ʱºò¿ÉÄÜ»á³öÏÖÈçϾ¯¸æ£¬¶Ô´Ë΢ÈíÔÚMSDNÖÐ×÷ÁË˵Ã÷£¬²¢½¨ÒéÎÒÃDz»ÒªÀí»áÕâ¸ö¾¯¸æ£ºmsado15.tlh(405) : warning
C4146: unary minus operator applied to unsigned type, result still
unsigned¡£
¡¡¡¡3¡¢´´½¨Connection¶ÔÏó²¢Á¬½ÓÊý¾Ý¿â
¡¡¡¡ÎªÁËÊ×ÏÈÎÒÃÇÐèÒªÌí¼ÓÒ»¸öÖ¸ÏòConnection¶ÔÏóµÄÖ¸Õë_Con
Ïà¹ØÎĵµ£º
pos25 = find (coll.begin(), coll.end(), //range
25); //value
pos35 = find (coll.begin(), pos25, //range
35); //value
if (pos35 != pos25) {
/*pos35 is in front of pos25
*so, only [pos35,pos25) is valid
*/
...
}
else {
pos35 = find (pos25, coll.end ......
1¡¢ һЩͷÎļþµÄ×÷Óãº
<assert.h>£ºANSI C¡£Ìṩ¶ÏÑÔ£¬assert(±í´ïʽ)
<glib.h>£ºGCC¡£GTK£¬GNOMEµÄ»ù´¡¿â£¬ÌṩºÜ¶àÓÐÓõĺ¯Êý£¬ÈçÓÐÊý¾Ý½á¹¹²Ù×÷º¯Êý¡£Ê¹ÓÃglibÖ»ÐèÒª°üº¬<glib.h>
<dirent.h>£ºGCC¡£Îļþ¼Ð²Ù×÷º¯Êý¡£struct dirent,struct DIR,opendir(),closedir(),readdir(),readdi ......
CºÍC++ÓïÑÔѧϰ×ܽá(Ò»)
֪ʶ½á¹¹:
1¡¢if,for,switch,goto
2¡¢#define,const
3¡¢Îļþ¿½±´µÄ´úÂë,¶¯Ì¬Éú³ÉÄÚ´æ,¸´ºÏ±í´ïʽ,strcpy,memcpy,sizeof
4¡¢º¯Êý²ÎÊý´«µÝ,ÄÚ´æ·ÖÅ䷽ʽ,ÄÚ´æ´íÎó±íÏÖ,mallocÓënewÇø±ð
5¡¢ÀàÖØÔØ¡¢Òþ²ØÓ븲¸ÇÇø±ð,externÎÊÌâ,º¯Êý²ÎÊýµÄȱʡ
ÖµÎÊÌâ,ºê´úÂëÓëÄÚÁªº¯ÊýÇø±ð
6¡¢¹¹ÔìºÍÎö¹ ......
Ò»¡¢»ñÈ¡ÈÕÀúʱ¼ä
time_tÊǶ¨ÒåÔÚtime.hÖеÄÒ»¸öÀàÐÍ£¬±íʾһ¸öÈÕÀúʱ¼ä£¬Ò²¾ÍÊÇ´Ó1970Äê1ÔÂ1ÈÕ0ʱ0·Ö0Ãëµ½´ËʱµÄÃëÊý£¬ÔÐÍÊÇ£º
typedef long time_t; /* time value */
¿ÉÒÔ¿´³ötime_tÆäʵÊÇÒ»¸ö³¤ÕûÐÍ£¬ÓÉÓÚ³¤ÕûÐÍÄܱíʾµÄÊýÖµÓÐÏÞ£¬Òò´ËËüÄܱíʾµÄ×î³Ùʱ¼äÊÇ2038Äê ......
ÏÈ˵python
pythonµÄrandomÄ£¿éÌṩÁ˶à¸öÎ±Ëæ»úÊý·¢ÉúÆ÷£¬Ä¬È϶¼ÊÇÓõ±Ç°Ê±¼ä´ÁÎªËæ»úÊýÖÖ×Ó¡£
ÏÂÃæÊǸÃÄ£¿é¼¸¸ö×î³£Óõĺ¯Êý
random() Return the next random floating point number in the range [0.0, 1.0).
randint(a,b) Return a random integer N such that a <=
N <= b
randrange([star ......