Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

c++µ÷ÓÃcʱ»Øµ÷º¯ÊýµÄ´¦Àí

      ÔÚc++µ÷ÓÃc³ÌÐòʱ£¬»Øµ÷º¯ÊýÊDz»ÄÜÖ±½ÓʹÓõģ¬ÒÔc++µ÷ÓÃcµÄGtkº¯ÊýΪÀý£¬ ±ÈÈ磬ÔÚg_idle_add (init, NULL);
Õâ¾ä»°ÖУ¬Ò»µ©idle¾Í»áµ÷Óú¯Êýinit(), Õâ¸öinit()»¹»á¶ÔÀàµÄ³ÉÔ±±äÁ¿½øÐд¦Àí¡£
Õâʱ£¬¼ÙÈç°Ñinit()¼òµ¥µØ¶¨ÒåΪÀàµÄÆÕͨ³ÉÔ±º¯Êý¾Í»á³öÏÖÀàÐͲ»Æ¥ÅäµÄ´íÎó£¬ÒòΪg_idle_add()ÒªÇóËüµÄµÚÒ»¸ö²ÎÊý
ÊǸöÆÕͨµÄº¯ÊýÖ¸Õ룬¶øÏÖÔÚÈ´»á±»±àÒëΪGtkScreen::init()º¯ÊýÖ¸Õ룬(¼Ù¶¨ÎÒҪдµÄÀà½Ð×öGtkScreen)¡£
     ½â¾ö°ì·¨¾ÍÊÇ:
    1. ÔÚGtkScreenµÄÍ·ÎļþÖн«º¯Êýinit()ÉùÃ÷ΪstaticµÄ¡£
    2. ÔÚÀàµÄʵÏÖÎļþ(GtkScreen.cpp)ÖÐËùÓеĺ¯ÊýÖ®ÍⶨÒåÒ»¸ö¾²Ì¬µÄÖ¸ÏòÀàµÄÖ¸Õë: static GtkScreen* pobject;
    3. ÔÚ¹¹Ô캯ÊýÖжÔpobject¸³Öµ: pobjct = this; £¨Êµ¼ÊÉϲ»±ØÒ»¶¨ÔÚ¹¹Ô캯ÊýÖУ¬Ö»ÒªÊDZȵ÷ÓÃÓï¾äÔçÖ´Ðеĵط½¾ÍÐУ©
    4. ÔÚÒªµ÷Óõĺ¯Êý(init)ÖÐ, ËùÓÐÀàµÄ³ÉÔ±±äÁ¿Ç°Ãæ¶¼¼ÓÉÏpobject->
    ¾ÍÐÐÀ²¡£
ͬʱҪעÒ⣬ÔÚc++ÖÐinclude cµÄ¿âÎļþ, include Óï¾äµÄÇ°ÃæÒª¼ÓÉÏ
#ifdef __cplusplus
extern "C" {
#endif
ºóÃæÒª¼ÓÉÏ
#ifdef __cplusplus
}
#endif


Ïà¹ØÎĵµ£º

Keil C51 vs ±ê×¼C

ÉîÈëÀí½â²¢Ó¦ÓÃC51¶Ô±ê×¼ANSICµÄÀ©Õ¹ÊÇѧϰC51µÄ¹Ø¼üÖ®Ò»¡£ÒòΪ´ó¶àÊýÀ©Õ¹¹¦Äܶ¼ÊÇÖ±½ÓÕë¶Ô8051ϵÁÐCPUÓ²¼þµÄ¡£´óÖÂÓÐÒÔÏÂ8 Àࣺ 8051´æ´¢ÀàÐͼ°´æ´¢ÇøÓòl;  ´æ´¢Ä£Ê½l´æ´¢Æ÷ÀàÐÍÉùÃ÷l±äÁ¿ÀàÐÍÉùÃ÷l λ±äÁ¿ÓëλѰַl  ÌØÊ⹦ÄܼĴæÆ÷(SFR)l C51Ö¸Õël  º¯ÊýÊôÐÔ¾ßÌå˵Ã÷ÈçÏÂ(8031ΪȱʡCPU)¡£
µÚÒ»½Ú Keil C ......

cÁ´±íµÄ2ÖÖÐÎʽ

c±ä³ÉµÄ¶ÔÏó´ó¶àÊǹ²ÏíÄÚ´æÖÐÉêÇ룬±È½ÏÉÙÓÃmallocÖ±½ÓÀ´ÉêÇ룬ËùÒÔÁ´±íÉè¼ÆÒ»°ãÊÇÏÂÃæ2Öнṹ£º
¶ÔÏó --> ¶ÔÏó --> ¶ÔÏó
¶ÔÏó -->Á´±í¶ÔÏó-->¶ÔÏó -->Á´±í¶ÔÏó
£¨1£©¶ÔÓÚµÚÒ»ÖÖ£¬Á´±íÖ±½Ó¹ØÁªµ½¶ÔÏó±¾Éí£¬ËùÒÔÈç¹ûÒ»¸ö¶ÔÏóÔÚÏûÍöʱ£¬Ã»Óм°Ê±ÇåÀíµôÁ´±í¹ØÏµ£¬Ôò»áµ¼ÖÂÁ´±íµôÁ´¡£
£¨2£©Á´±í¶ÔÏó±¾ÉíÊÇÒ» ......

extern "C"

      ΪʲôÐèҪʹÓÃextern "C"ÄØ£¿C++Ö®¸¸ÔÚÉè¼ÆC++֮ʱ£¬¿¼Âǵ½µ±Ê±ÒѾ­´æÔÚÁË´óÁ¿µÄC´úÂ룬ΪÁËÖ§³ÖÔ­À´µÄC´úÂëºÍÒѾ­Ð´ºÃC¿â£¬ÐèÒªÔÚC++Öо¡¿ÉÄܵÄÖ§³ÖC£¬¶øextern "C"¾ÍÊÇÆäÖеÄÒ»¸ö²ßÂÔ¡£
¡¡¡¡ÊÔÏëÕâÑùµÄÇé¿ö:Ò»¸ö¿âÎļþÒѾ­ÓÃCдºÃÁ˶øÇÒÔËÐеúÜÁ¼ºÃ£¬Õâ¸öʱºòÎÒÃÇÐèҪʹÓÃÕâ¸ö¿âÎļþ£ ......

C/C++ µÄÈ«¾Ö±äÁ¿³õʼ»¯Óë²»³õʼ»¯µÄÇø±ð

ÔÚCÓïÑÔÀȫ¾Ö±äÁ¿Èç¹û²»³õʼ»¯µÄ»°£¬Ä¬ÈÏΪ0£¬Ò²¾ÍÊÇ˵ÔÚÈ«¾Ö¿Õ¼äÀ
int x =0; ¸ú int x; µÄЧ¹û¿´ÆðÀ´ÊÇÒ»ÑùµÄ¡£µ«ÆäʵÕâÀïÃæµÄ²î±ðºÜ´ó£¬Ç¿ÁÒ½¨Òé´ó¼ÒËùÓеÄÈ«¾Ö±äÁ¿¶¼Òª³õʼ»¯£¬ËûÃǵÄÖ÷Òª²î±ðÈçÏ£º
±àÒëÆ÷ÔÚ±àÒëµÄʱºòÕë¶ÔÕâÁ½ÖÖÇé¿ö»á²úÉúÁ½ÖÖ·ûºÅ·ÅÔÚÄ¿±êÎļþµÄ·ûºÅ±íÖУ¬¶ÔÓÚ³õʼ»¯µÄ£¬½ÐÇ¿·ûºÅ£¬Î´³õʼ»¯µÄ ......

cʵÏֵĶÁ´óÎļþ·½·¨£¨Ô´´úÂ룩


static char *file2memory(FILE *file, long *size)
{
  char buffer[1024];
  char *string=NULL;
  char *newstring=NULL;
  long len=0;
  long stringlen=0;
  if(file) {
    while((len = fread(buffer, 1, sizeof(buffer), f ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ