我想知道如何将std :: vector转换为void*,例如,
std::vector<ColorData> piexls_ (w*h, background_color);
Run Code Online (Sandbox Code Playgroud)
现在我想将piexls_转换为(void*),以便我可以记忆pixel_.
memcpy ((void*)destinationBuffer->pixels_, (void*)sourceBuffer->pixels_, \
sizeof(ColorData)*destinationBuffer->width_*destinationBuffer->height_);
Run Code Online (Sandbox Code Playgroud)
但是,当我运行此代码时,我得到错误说 invalid cast from type ‘std::vector<image_tools::ColorData>’ to type ‘void*’
如何将std :: vector转换为void*.非常感谢!
我正在尝试在unix上实现micropython,这需要libffi-dev.我安装这种方式brew install libffi-dev.但似乎没有找到libffi-dev.
有没有办法libffi-dev在Mac OS 上安装.谢谢.
我是 C++ 新手,对 C++ 中一个类如何访问另一个类中的公共方法感到困惑。例如,
//.h of class A
class A {
public:
void setDimension (int width, int height);
A* obj;
}
//.cpp of class A
#include "A.h"
void A::setDimension (int width, int height) {
// do some stuffs here
}
//.h of class B
#include "A.h"
class B {
public:
void function ();
//do something here
}
//.cpp of class B
#include "A.h"
#include "B.h"
void B::function() {
obj->setDimension(int width, int height);
}
Run Code Online (Sandbox Code Playgroud)
现在我希望 B 类可以访问 A 类中的公共方法“setDimension”。我认为依赖文件已包含在内,但是当我运行程序时,我收到一条错误消息setDimension …