怎么new一个结构体

奔跑的大象 2011-10-12 09:08:40
这个结构体是用来存储用户信息的,程序每次执行的时候都需要new一个结构体出来,后面会新建一个线程,线程里需要用到这个结构体的信息,不知道是怎么new的,会的快快说下,谢谢了。
...全文
1310 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
蓝鹰 2011-10-12
  • 打赏
  • 举报
回复
顶1楼的,就这样new 和new一个对象的用法一样
yujie_v 2011-10-12
  • 打赏
  • 举报
回复
直接new就可以。就跟int一样的。
gwxll 2011-10-12
  • 打赏
  • 举报
回复
写个小Demo,仅供参考:

// Demo.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include "string.h"

//--------------------------------------------------------------------------
typedef struct _USER_INFO
{
char UserName[32];
int UserId;
}USERINFO,*PUSERINFO;
//--------------------------------------------------------------------------

int TreadFunc(PUSERINFO pUserInfo)
{
printf("UserName:%s UserId:%d\n",pUserInfo->UserName,pUserInfo->UserId);
return 1;
}
//--------------------------------------------------------------------------

int main()
{
char tmp[32];
for (int i=0;i<10;i++)
{
USERINFO *pUserInfo=new USERINFO;

sprintf_s(tmp,32,"User_%d",i);
strcpy(pUserInfo->UserName,tmp);
pUserInfo->UserId=i;
if (TreadFunc(pUserInfo))
{
delete pUserInfo;
}
}

return 0;
}
//--------------------------------------------------------------------------


奔跑的大象 2011-10-12
  • 打赏
  • 举报
回复
str *b= new str(32);
这句什么意思啊。
Roy_Smiling 2011-10-12
  • 打赏
  • 举报
回复
struc str{int a; int b};
str *a=new str;
str *b= new str(32);

64,648

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧