//use sum_two_numbers from python by pyside and cpp
void use_sum_two_numbers(){
PyObject *pName, *pModule, *pFunc;
PyObject *pArgs, *pValue;
Py_Initialize();
pName = PyString_FromString("sum_two_numbers");
pModule = PyImport_Import(pName);
Py_DECREF(pName);
if (pModule != NULL) {
pFunc = PyObject_GetAttrString(pModule, "sum_two_numbers");
if (pFunc && PyCallable_Check(pFunc)) {
pArgs = PyTuple_New(2);
PyTuple_SetItem(pArgs, 0, PyInt_FromLong(1));
PyTuple_SetItem(pArgs, 1, PyInt_FromLong(2));
pValue = PyObject_CallObject(pFunc, pArgs);
Py_DECREF(pArgs);
if (pValue != NULL) {
printf("%ld\n", PyInt_AsLong(pValue));
Py_DECREF(pValue);
}
else {
Py_DECREF(pFunc);
Py_DECREF(pModule);
PyErr_Print();
printf("Call failed\n");
}
}
else {
if (PyErr_Occurred())
PyErr_Print();
printf("Cannot find function \"sum_two_numbers\"\n");
}
Py_XDECREF(pFunc);
Py_DECREF(pModule);
}
else {
PyErr_Print();
printf("Failed to load \"sum_two_numbers\"\n");
}
Py_Finalize();
}