Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/126.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 强制转换时访问冲突异常_C++_Firebreath - Fatal编程技术网

C++ 强制转换时访问冲突异常

C++ 强制转换时访问冲突异常,c++,firebreath,C++,Firebreath,我想将FB::variant强制转换为FB::JSObjectPtr。下面是我的代码 void PluginAPI::Test(FB::variant testVariant) { FB::JSObjectPtr jsObject=testVariant.convert_cast< FB::JSObjectPtr>(); } void PluginAPI::Test(FB::variant testVariant) { FB::JSObjectPtr jsObject

我想将FB::variant强制转换为FB::JSObjectPtr。下面是我的代码

void PluginAPI::Test(FB::variant testVariant)
 {
     FB::JSObjectPtr jsObject=testVariant.convert_cast< FB::JSObjectPtr>();
 }
void PluginAPI::Test(FB::variant testVariant)
{
FB::JSObjectPtr jsObject=testVariant.convert_cast();
}

上述强制转换引发访问冲突异常。请让我知道解决方案。

我不知道为什么会抛出访问冲突异常,但通常最可能的原因是,传入的不是javascript对象

为什么要在函数内部执行convert_cast?只需将函数重写为:

void PluginAPI::Test(const FB::JSObjectPtr& jsObject)
{
    // use it here
}

FB::variant
FB::JSObjectPtr
是如何定义的?Test(FB::variant testVariant)是从JavaScript调用的&testVariant是JavaScript对象。那么您所说的
JavaScript对象
是什么意思?向我们展示代码和可能的原因,而不仅仅是问题。@herohyuongtao和Victor不会因为你不了解FireBreath就否决这个问题;对于熟悉FireBreath的人来说,您的问题的答案是显而易见的。这些是FireBreath类型谢谢你的回复。