boost.python ¹ØÓÚ´øÖ¸Õë²ÎÊýµÄCº¯ÊýµÄµ¼³ö
Èç¹ûÀûÓÃboost.python µ¼³ö´øÓÐÖ¸Õë²ÎÊýµÄCº¯Êý£¬Ìṩ¸øpython½Å±¾µ÷Óá£
È磺
int func(int * pi)
{
*pi = 3;
cout < < "new pi:" < < *pi < < endl;
return 0£»
}
½«ÒÔÉϺ¯ÊýÀûÓÃboost.pythonµ¼³ö¡£
Èç¹û×ö²»µ½£¬ÄÇÄÜ·ñµ¼³öÒýÓòÎÊýµÄº¯ÊýÄØ£¿
È磺
int func(int & pi)
{
pi = 3;
cout < < "new pi:" < < pi < < endl;
return 0£»
}
Èç¹ûµ¼³ö£¿
pythonÀ©Õ¹ºÍÄÚǶÓкܶàÖÖ·½·¨
¿ÉÒԲο¼´ËÌù·½·¨ http://topic.csdn.net/u/20090914/19/6b2c396a-c4f4-4fc3-9e7c-3fcfba504568.html?80658
ÎұȽÏϲ»¶ÓÃswigµÄ·½·¨À´°ü×°µ¼³ö
ÌùÒ»ÏÂswigµÄ·½·¨
C/C++ code:
/* messagebox.c */
#include <windows.h>
void MsgBox(char* lpszTitle, char* lpszMsg){
MessageBox(NULL, lpszMsg, lpszTitle, MB_OK);
}
±àдmessagebox.i
C/C++ code:
%module messagebox
%{
extern void MsgBox(char* lpszTitle, char* lpszMsg);
%}
extern void MsgBox(char* lpszTitle, char* lpszMsg);
ʹÓÃswigÉú³Émessagebox_wrap.
Ïà¹ØÎÊ´ð£º
13¸öÈËΧ³ÉһȦ£¬´ÓµÚÒ»¸öÈË¿ªÊ¼Ë³Ðò±¨ºÅ1£¬2£¬3¡£·²±¨µ½3ÕßÍ˳öȦ×Ó£¬ÕÒ³ö×îºóÁôÔÚȦ×ÓÖеÄÈËÔÀ´µÄÐòºÅ
½á¹ûÓ¦¸ÃÊÇ13 ¿ÉÎҵijÌÐòµÄ½á¹ûÊÇ11 Ï£ÍûºÃÐÄÈ˰ï¸ÄÒ»ÏÂ
#include <stdio.h>
#include < ......
µØµãÔÚÉîÛÚÄÏɽ
¡¡¡¡×öCÈí¼þ¡£ÊÔÓÃ2K£¬²»ÖªµÀתÕý¸ø¹«Ë¾Ì¸¶àÉÙºÏÊʰ¡£¿
¡¡¡¡ÁíÍ⣬±¾ÈËС±¾£¬Ó¢ÓïÁù¼¶£¬ÊÔÓÃÈý¸öÔ±íÏÖµÃÒ²ËãÖÐÉÏˮƽ¡£µ«ÊÇÏÖÔÚ»¹²»ÄÜ×öÏîÄ¿¡£ÁíÍâ±ÏҵѧУûÓÐÃûÆø¡£
¡¡¡¡×ªÕý¸ø¹«Ë¾Ì¸¶àÉ ......
ΪʲôCдµÄDLLÎļþC¡¢PBÄܵ÷ÓÃVB²»Äܵ÷Óã¿
VBÀïΪʲôÓеÄDLLÖ±½Óͨ¹ýÒýÓÿÉÒÔʹÓã¿ÓеÄÐèҪͨ¹ýdeclareÉêÃ÷Íⲿº¯Êý£¿ÕâЩDLLÓÐʲô²î±ð£¿
1¡¢ÎªÊ²Ã´PBÄÜͨ¹ýDECLAREÉùÃ÷¶øVB²»ÐУ¿
2¡¢Èç¹ûÕâ¸ödllÖÐµÄ ......
´ó¼ÒºÃ£¡ÎÒÊÇһλC°®ºÃÕߣ¬Ïò´ó¼ÒÇë½ÌÏ£¬C³ÌÐòÔ±¿ÉºÃÕÒ¹¤×÷£¿¹«Ë¾ÓÃC¸ÉЩʲô£¿
ÎÞËùνºÃ²»ºÃÕÒ¹¤×÷£¬Ò»°ãͨÐÅ¡¢ÏµÍ³¡¢Ç¶Èëʽ¡¢Ó²¼þ·½ÃæÓõĶ࣬¶øÇÒÓÉÓÚCµÄµ×²ãÌØÐÔ£¬Ñ§»áºóÔÚѧÆäËûµÄ»á±È½ÏÈÝÒ×
²»¹ÜÓÃʲôÓï ......
'\108'×÷Ϊ×Ö·û³£Á¿¶Ô²»¶Ô£¿
תÒå×Ö·û'\ddd'±íʾ3λ8½øÖÆËù´ú±íµÄ×Ö·û¡£ µ«ÊÇ108²»ÊÇÕýÈ·µÄ8½øÖƱíʾ·½·¨£¬Òò´ËÓ¦¸ÃÊÇ´íÎóµÄ¡£
µ«ÊÇchar a='\108'; Ϊʲô±àÒë²»³ö´íÄØ£¿
\108 û³¬¹ý ......