´ó¼ÒºÃ£¬ÎÒÏëÓÃcµ÷ÓÃc++д³ÉµÄÒ»¸öº¯Êý£¬ÔÚÍøÉϲéÁ˰ëÌ죬ҲÓÃÁËextern ¡°C¡±ÁË£¬µ«ÊÇ»¹ÊDz»ÐУ¬¾ßÌåÎÒ¸ú´ó¼Ò˵һÏ£ºÎÒÓÐÒ»¸öselect_program.cµÄ³ÌÐòÏëµ÷ÓÃÒ»¸öMFcµÄc++³ÌÐò£¬Õâ¸ö³ÌÐòÔÚÒ»¸ömfsFile.cppÖУ¬ÊÇÒ»¸öÀàpublic³ÉÔ±º¯Êý£¬Õâ¸öc++º¯Êý»¹Óõ½ÁËÆäËûËĸö.cppº¯Êý£¬ËùÒÔÏÖÔÚÎÒÔõôҲÎÞ·¨µ÷Óã¬ÊDz»ÊDzÙ×÷ÓÐÎÊÌ⣿»¹ÊDz»Äܵ÷Óã¿Çë¸÷λ´óʦ°ï棡ллÀ²£¡
ÊDz»ÊÇÒòΪÊÇMFCµÄº¯ÊýÖ®¹Ê£¿ÒòΪÎÒ¸Õ½Ó´¥C++£¬ËùÒԱȽϲˣ¡Óò»ÓÃ×ö³É¿âº¯Êý£¿ÊÇ×ö³É¶¯Ì¬µÄ»¹ÊǾ²Ì¬µÄ£¿Çë´ó¼ÒÖ¸µã£¡
ÒªÔÚC++´úÂëÖÐÓÃextern "C"...
Òâ˼ÊÇ˵C++µÄ¶«Î÷¿ÉÄܻᱻC³ÌÐòµ÷ÓÃ,ÄÇô±àÒëµÄʱºòҪŪ³ÉC³ÌÐòÈϵÄ.
¶øC++µ÷ÓÃCÒ²ÊÇÔÚC++´úÂëÖÐÓÃextern "C"ÉùÃ÷,Òâ˼ÊÇ˵,ÎÒµ÷ÓõĶ«Î÷À´×ÔC³ÌÐò.
ÕâЩÎÒ¶¼ÖªµÀ£¬µ«ÊǾßÌå²Ù×÷ÆðÀ´¾ÍÊDz»ÐУ¬ÎÒÒ²ÔÚC++ÀïÃæµÄº¯Êýǰ¼ÓÁËextern ¡°C¡±ÁË£¬»¹ÊDz»ÐС£»¹ÓÃÁËÆäËûµÄһЩ°ì·¨Ò²²»³É¡£¼±°¡~
˵µÃÃ÷°×Ò»µã°É£¬ÎÒµÄmfsFile.cppÖÐÓÐÒ»¸öcreateMFrames()º¯Êý£¬ÎÒÏÖÔÚÒªÔÚselect_program.cÖÐÓ㬵«ÊÇËÀ»î¾ÍÊǵ÷Óò»ÁË£¬Ã¿´Î±àÒë¶¼ÓкöàµÄ´í£¡ÎÒµÄÕâ¸öcreateMFrames()º¯Êý»¹Óõ½ÁËÆäËûËĸö.cppÖеĺ¯Êý£¬¶¼ÊÇc++µÄÀ࣬ÀïÃæ»¹Éæ¼°ÁËһЩvectorµÄ¶«Î÷¡£ÎÒÓÃÁËextern ¡°C¡±ÔÚmfsFile.hÖÐÉùÃ÷£¬ÔÚselect_program.cÖÐÓÃextern createMFrames()£»½á¹û³öÏÖÁËÏÂÃæµÄ´íÎó£ºmfcs80d.lib(dllmodul.obj) : error LNK2005: _DllMain@12 already defined in MSVCRTD.lib(dllmain.obj)
1> Creating library .\Debug/splitter.lib and object .\Debug/splitter.exp
1>../debug/splitter.plg : fatal error LNK1169: one or more multiply defined symbols found
°ÑexternÔÚselect_program.cÖÐÈ¥µôÒ²²»ÐÐ!