MyStruct.cpp
上传用户:weisheen
上传日期:2022-07-09
资源大小:19390k
文件大小:1k
源码类别:

ActiveX/DCOM/ATL

开发平台:

Visual C++

  1. // MyStruct.cpp : Implementation of CMyStruct
  2. #include "stdafx.h"
  3. #include "StructDemo.h"
  4. #include "MyStruct.h"
  5. /////////////////////////////////////////////////////////////////////////////
  6. // CMyStruct
  7. STDMETHODIMP CMyStruct::GetPersonById(UINT id,StPerson** Result)
  8. {
  9. StPerson* p=(StPerson*)::CoTaskMemAlloc(sizeof(StPerson));//申请1个空间
  10. p->age=23;
  11. p->name=::SysAllocString(L"zhangsan");
  12. p->sex=::SysAllocString(L"male");
  13. *Result=p;
  14. return S_OK;
  15. }
  16. STDMETHODIMP CMyStruct::GetAllPerson(UINT* number,StPerson** Result)
  17. {
  18. StPerson* p=(StPerson*)::CoTaskMemAlloc(2*sizeof(StPerson));//申请2个空间
  19. ZeroMemory(p,2*sizeof(StPerson));//初始化数组(连续的)空间
  20. p->age=23;
  21. p->name=::SysAllocString(L"芙蓉");
  22. p->sex=::SysAllocString(L"女");
  23. (p+1)->age=23;
  24. (p+1)->name=::SysAllocString(L"李松涛");
  25. (p+1)->sex=::SysAllocString(L"男");
  26.     *Result=p;
  27. *number=2;
  28. return S_OK;
  29. }