C/C++Öж¯Ì¬Á´½Ó¿âµÄ´´½¨ºÍµ÷ÓÃ
ת×Ô£ºhttp://dev.yesky.com/12/3067012.shtml
¶¯Ì¬Á¬½Ó¿âµÄ´´½¨²½Ö裺
¡¡¡¡Ò»¡¢´´½¨Non-MFC DLL¶¯Ì¬Á´½Ó¿â
¡¡¡¡1¡¢´ò¿ªFile —> New —> ProjectÑ¡ÏѡÔñWin32 Dynamic-Link Library —>sample project
¡¡¡¡—>¹¤³ÌÃû£ºDllDemo
¡¡¡¡2¡¢Ð½¨Ò»¸ö.hÎļþDllDemo.h
ÒÔÏÂÊÇÒýÓÃÆ¬¶Î£º
¡¡¡¡#ifdef DllDemo_EXPORTS
¡¡¡¡#define DllAPI __declspec(dllexport)
¡¡¡¡#else
¡¡¡¡#define DllAPI __declspec(dllimport)
¡¡¡¡extern "C" //ÔÑù±àÒë
¡¡¡¡{
¡¡¡¡DllAPI int __stdcall Max(int a,int b); //__stdcallʹ·ÇC/C++ÓïÑÔÄÚÄܹ»µ÷ÓÃAPI
¡¡¡¡}
¡¡¡¡#endif
¡¡¡¡3¡¢ÔÚDllDemo.cppÎļþÖе¼ÈëDllDemo.hÎļþ,²¢ÊµÏÖMax(int,int)º¯Êý
ÒÔÏÂÊÇÒýÓÃÆ¬¶Î£º
¡¡¡¡#include "DllDemo.h"
¡¡¡¡DllAPI int __stdcall Max(int a,int b)
¡¡¡¡{
¡¡¡¡if(a==b)
¡¡¡¡return NULL;
¡¡¡¡else if(a>b)
¡¡¡¡return a;
¡¡¡¡else
¡¡¡¡return b;
¡¡¡¡}
¡¡¡¡4¡¢±àÒë³ÌÐòÉú³É¶¯Ì¬Á¬½Ó¿â
¡¡¡¡¶þ¡¢ÓÃ.defÎļþ´´½¨¶¯Ì¬Á¬½Ó¿âDllDemo.dll¡£
¡¡¡¡1¡¢É¾³ýDllDemo¹¤³ÌÖеÄDllDemo.hÎļþ¡£
¡¡¡¡2¡¢ÔÚDllDemo.cppÎļþÍ·£¬É¾³ý #include DllDemo.hÓï¾ä¡£
¡¡¡¡3¡¢Ïò¸Ã¹¤³ÌÖмÓÈëÒ»¸öÎı¾Îļþ£¬ÃüÃûΪDllDemo.def²¢Ð´ÈëÈçÏÂÓï¾ä£º
¡¡¡¡LIBRARY MyDll
¡¡¡¡EXPORTS
¡¡¡¡Max@1
¡¡¡¡4¡¢±àÒë³ÌÐòÉú³É¶¯Ì¬Á¬½Ó¿â¡£
¶¯Ì¬Á´½ÓµÄµ÷Óò½Ö裺
¡¡¡¡Ò»¡¢Òþʽµ÷ÓÃ
¡¡¡¡1¡¢ ½¨Á¢DllCnslTest¹¤³Ì
¡¡¡¡2¡¢ ½«ÎļþDllDemo.dll¡¢DllDemo.lib¿½±´µ½DllCnslTest¹¤³ÌËùÔÚµÄĿ¼
¡¡¡¡3¡¢ ÔÚDllCnslTest.hÖÐÌí¼ÓÈçÏÂÓï¾ä£º
ÒÔÏÂÊÇÒýÓÃÆ¬¶Î£º
¡¡¡¡#define DllAPI __declspec(dllimport)
¡¡¡¡#pragma comment(lib£¬"DllDemo.lib") //ÔÚ±à¼Æ÷linkʱ£¬Á´½Óµ½DllDemo.libÎļþ
¡¡¡¡extern "C"
¡¡¡¡{
¡¡¡¡DllAPI int __stdcall Max(int a,int b);
¡¡¡¡}
¡¡¡¡4¡¢ÔÚDllCnslTest.cppÎļþÖÐÌí¼ÓÈçÏÂÓï¾ä£º
ÒÔÏÂÊÇÒýÓÃÆ¬¶Î£º
¡¡¡¡#include "DllCnslTest.h"//»òÕß #include "DllDemo.h"
¡¡¡¡void main()
¡¡¡¡{
¡¡¡¡int value;
¡¡¡¡value = Max(2,9);
¡¡¡¡printf("The Max value is&nb
Ïà¹ØÎĵµ£º
http://www.trendcaller.com/2009/05/hadoop-should-target-cllvm-not-java.html
Sunday, May 10, 2009
Hadoop should target C++/LLVM, not Java (because of watts)
< type="text/javascript">
digg_url="http://www.trendcaller.com/2009/05/hadoop-should-target-cllvm-not-java.html";
Over the years, ......
3.ÄÚ¹¦Ìâ
¡¡¡¡ÊÔÌâ1£º·Ö±ð¸ø³öBOOL£¬int£¬float£¬Ö¸Õë±äÁ¿ Óë“ÁãÖµ”±È½ÏµÄ if Óï¾ä£¨¼ÙÉè±äÁ¿ÃûΪvar£©
¡¡¡¡½â´ð£º
¡¡¡¡¡¡BOOLÐͱäÁ¿£ºif(!var)
¡¡¡¡¡¡intÐͱäÁ¿£º if(var==0)
¡¡¡¡¡¡floatÐͱäÁ¿£º
¡¡¡¡¡¡const float EPSINON = 0.00001;
¡¡¡¡¡ ......
ÌâÍâÆª£ºµ¥Ôª²âÊÔÄÑÓÚ³¤ÆÚ¼á³ÖµÄÔÒòÓë½â¾ö̽ÌÖ
ÉÏһƪ¡¶µ¥Ôª²âÊÔÐ§Òæ¡·£¬ÓÐÍøÓÑÆÀÂÛ˵£º“µ¥Ôª²âÊԵĺô¦»ù±¾ÈËÈËÖªµÀ£¬¾ÍÊÇÄѼá³Ö£¡”¡£ÕâÒ»ÆÀÂÛÑÏÖØÌáÐÑÁËÎÒ£¬²»´í£¬“ÄѼá³Ö”Ò²ÊÇÒ»¸öÆÕ±éÏÖ×´¡£Èç¹û²»Äܼá³Ö£¬ÄÇÒ»Çж¼Êǰ״Òò´Ë£¬ÕâÀï²åÈëÒ»¸öÌâÍâÆª£¬Ì½ÌÖµ¥Ôª²âÊÔÄÑÓÚ³¤Æ ......
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.spri ......
µÚ¶þÕ Êý¾ÝÀàÐÍ
Ò»¡¢Êý¾ÝÀàÐÍ·ÖÀà
1 ÁªºÏÀàÐÍ
2 º¯ÊýÀàÐÍ
3 ÊýÁ¿ÀàÐÍ
3.1ËãÊõÀàÐÍ
¢Ù »ù±¾Êý¾ÝÀàÐÍ
ÕûÐÍ£¨°üÀ¨char£©
¸¡µãÐÍ ......