C++中,和C#功能相同的代码
这段代码是C#的
//m_struPtzCfg 这个东西是个结构体
Int32 nSize = Marshal.SizeOf(m_struPtzCfg);
IntPtr ptrPtzCfg = Marshal.AllocHGlobal(nSize);
Marshal.StructureToPtr(m_struPtzCfg, ptrPtzCfg, false);
Question: C++有没有相同功能的代码?
附
//m_struPtzCfg 这个东西是个结构体,就是这个
public struct NET_DVR_PTZPOS
{
public ushort wAction;//获取时该字段无效
public ushort wPanPos;//水平参数
public ushort wTiltPos;//垂直参数
public ushort wZoomPos;//变倍参数
}
回答
对于这种代码 C++ 不就是最擅长做的吗?冒昧的说一句,题主是没有好好学 C++ 吧。既然要帮了你了,就把代码给你看看:
#include <iostream>
struct NET_DVR_PTZPOS
{
unsigned short wAction;//获取时该字段无效
unsigned short wPanPos;//水平参数
unsigned short wTiltPos;//垂直参数
unsigned short wZoomPos;//变倍参数
};
int main()
{
NET_DVR_PTZPOS* ptrPtzCfg = new NET_DVR_PTZPOS{1,2,3,4}; //这个是你的指针指向的内容,我假设是这个内容
NET_DVR_PTZPOS m_struPtzCfg; //你要转化的结构体
memcpy(&m_struPtzCfg, ptrPtzCfg,sizeof(NET_DVR_PTZPOS)); //拷贝过去
return 0;
}
如果有不懂的话,可以追问。