
GetDlgItem(IDC_EDIT)->SetWindowText(_T("你的字符串"))
1、可以在结构体中添加指针类成员变量,并在成员函数中实现动态数组的分配。
2、以下以一个仅实现整型动态数组,不包含其它功能的类为例做说明。
class array //类名{
public:
int *v //动态数组首地址。
int length //动态数组长度。
array(int len)
{
if(len <= 0)//初始化长度非法。
{
length = 0
v = NULL
}
else
{
length = len
v = new int[length]//内存分配。
}
}
~array()
{
delete [] v//析构中释放内存。
}
}
你这个已经开辟好了啊,array = (struct record *)malloc(sizeof(struct record )*num)
就是开辟了num*sizeof(struct record )大小的连续空间
不过你后边对array进行 *** 作时候尽量不要用数组形式,用指针形式会比较好。
开辟好了,你这就是固定的num个元素的数组,
如果要增大这个数组中元素的个数,就是把这个数组变长的话,
只能重新申请新的总个数的空间大小,比如增长m个
就只能重新申请 (struct record *)malloc(sizeof(struct record )*(num+m))
然后把原来的数据复制过去,因为数组是连续的空间,必须一次分配好全部内存才行。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)