¹ØÓÚpython µ÷ÓÃc++ ³öÏÖ´íÎóµÄÎÊÌâ
ÎÒÓÐÈý¸öCPPÎļþ
wrap.cpp
C/C++ code:
#include <Python.h>
#include "bridge.h"
extern "C"
{
PyObject* bridge(PyObject* self, PyObject* args)
{
int n = 0;
int result = 0;
if (! PyArg_ParseTuple(args, "answer", &n))
return NULL;
result = transport(4);
return Py_BuildValue("answer", result);
}
static PyMethodDef bridgeMethods[] =
{
{"transport", bridge, METH_VARARGS, "transport data"},
{NULL, NULL}
};
void initbridge()
{
PyObject* m;
m = Py_InitModule("bridge", bridgeMethods);
}
}
bridge.cpp
C/C++ code:
#include "bridge.h"
#include "faq.h"
extern "C"
{
int transport(int n)
{
FAQ *myFaq = new FAQ();
int c = myFaq->getBetterAnswer();
delete myFaq;
return c;
}
}
faq.cpp
C/C++ code:
#include "faq.h"
int FAQ::getBetterAnswer(void)
{
return 3;
}
void FAQ::printAnswer()
{
}
FAQ::FAQ()
{
}
FAQ::~FAQ()
{
}
ʹÓà g
Ïà¹ØÎÊ´ð£º
ÇëÎʸ÷λ¸ßÊÖÈçºÎÓÃC/C++»ñµÃϵͳδ°²×°²¹¶¡
ºÃÏñºÜרҵµÄ¶«Î÷¡£¡£¡£
²é×¢²á±í
ÿ¸ö²¹¶¡Èç¹û°²×°Á˶¼»áÔÚ×¢²á±íÀïÃæµÇ¼Ç
ÇëÎÊÄܲ»ÄܸüÇåÎúЩ£¬ÎÒÏëÓÃc\c++²é³öÀ´£¬²»ºÃÒâ˼£¬ÎÒÊÇÐÂÊÖ¡£»¹ÍûÖ¸½Ì¡£Ð»
·ÖÖµ ......
ÓÃc/c++¶¨Î»É¾³ýÒ»ÐеÄÎÊÌâ¡£
ÎÊÌâ±³¾°£º
ËùÐèÊý¾ÝÏ൱´ó¡£aÓëbÎļþ¾ùΪһ×éÎļþ£¨a1£¬a2¡£¬b1£¬b2¡£©£¬aÎļþÓÐ×î´óÊý¾ÝÐÐÊý£¨Èç5000£©£¬ÒÔÐеÄÐÎʽ£¬´ÓaÎļþÖжÁÈ¡Êý¾Ý£¬½«aÖв»ÄÜ´¦ÀíµÄÊý¾Ý·ÅÔÚbÎ ......
#include"stdio.h"
#include"stdlib.h"
void ContrTwo(char i)
{
char str1[8];
itoa(i,str1,2);
printf("%s",str1);
}
unsigned char leftRot(char str,int i);
unsign ......
±¾ÈËѧϰcÒÑÓÐÈýÄêʱ¼ä ÎÒ¸Õ½¨ÁËÒ»¸öȺ ÓжÔc¸ÐÐËȤµÄ¿ÉÒÔ¼ÓÈë »¶Ó´ó¼ÒȺºÅÊÇ£º91975736
½Ó·Ö
Â¥Ö÷Ҫѧ»á½áÌù£¬½Ó·Ö
ÄãÃDz»ÊÇ»¹Ã»ÓмÓÈëÂð ÎÒ¸ÉÂï½áÌùÄØ ºÇºÇ
QQÊÇʲô£¿Ò»ÖÖʳÎïÂð£¿
ÎÒÏë¼Ó
¼ÓÍêÁ ......
ÎÒֻѧ¹ýÇ廪À¶·âÃæµÄCÓïÑÔ»ù´¡£¬Ïë¸üÉîÈëµÄѧϰ£¬¸Ã¿´Ê²Ã´ÊéºÃ£¿
C Primer Plus
C³ÌÐòÉè¼ÆÓïÑÔ(µÚ2°æÐ°æ)
CÓïÑÔ³ÌÐòÉè¼Æ_ÏÖ´ú·½·¨
CÓïÑԲο¼ÊÖ²áµÚÎå°æ
CÓïÑÔ´óÈ«
CºÍÖ¸Õë
CÏÝÚåÓëȱÏÝ
Cר¼Ò±à³Ì
......