我有接收一個函數指針和具有該功能的認定中和每說參數的XML字符串的功能的C++函數:調用使用函數指針
void CallFunction(void * pFuncion, std::string xmlFuncionDef)
{
}
裏面的上述功能, xmlFunctionDef
包含由pFunction
指向的函數的定義。例如,數字參數,每個參數的類型和參數:
<Function ParamCount="3" ReturnType="int">
<Params>
<Param type="int" DefaultValue="None" PassBy="Value"/>
<Param type="double" DefaultValue="None" PassBy="Referenc"/>
<Param type="char*" DefaultValue="None" PassBy="Pointer"/>
</Params>
<Arguments>
<Arg Value="3" />
<Arg Value="29.5" />
<Arg Value="Hello World" />
</Arguments>
</Function>
現在我該如何調用此函數?我應該使用_asm
嗎?
任何幫助將不勝感激。
沒有ü意味着'無效CallFunction(無效(* pFuncion)(無效),的std :: string xmlFuncionDef)'? – hit
您問「如何調用該功能」。但是第一部分已經不清楚了:你如何接收指向該函數的指針? 'void * pFuncion'是void類型的指針,這不是指向函數的指針。 – ondrejdee
如果您的代碼應該在特定的體系結構上運行,那麼您可以使用內聯彙編並將參數壓入堆棧,然後調用該函數。但是,然後你的函數負責以正確的順序從堆棧中獲取參數。無論如何,你的問題沒有明確的定義。更具體一些,並舉例說明。 –