Question: When I extend PHP in C + +, I use some math library functions such as SQR,SQRT, which need to include in the source file test.cpp of the C + + extension project , but at compile time, these functions are found to have problems with redefining redefinition.
After several attempts, it is found that the test.cpp beginning of the # include "Php.h" is removed, there is no such a problem
Reason: query learned that, because Php.h, many C + + library functions have done inline inline, Defined directly in Php.h, resulting in a function definition with the same name in the C + + library function file Stdio.h is identified as a redefinition (the inline-decorated function is not allowed in other file definitions)
Resolves: C + + header files with redefined functions are written in # include " Php.h "Before the inline function is masked, the position in Test.cpp is as follows:
#ifdef have_config_h#include" Config.h "#endif #include
#include
#include
#include
#inclu De
#include
#include
#include "php.h" #include "php_ini.h" #include "Ext/standar D/info.h "#include" php_nearestneighbors.h "
Copyright notice: This article for Bo Master original article, without the permission of Bo Master not reproduced.
The above describes the extension of PHP in C + + when the function redefined redefinition issues, including aspects of the content, I hope to be interested in PHP tutorial friends helpful.