www.fltk.net > C++编写动态数组类 TArrAy,构造函数里指针数组初始化问题

C++编写动态数组类 TArrAy,构造函数里指针数组初始化问题

main.cpp#include "1.h"int main(){ TArray a(10); // a是一个double 类型的长度为10动态数组 TArray b; // b是一个double 类型的尚未确定其长度的动态数组 b.SetLen(7); // 使b成为一个长度为7的动态数组 double d[10] = { 1,2,3,4,5,6,7,8,9,10 }; a.

首先你要实现一下构造函数CTest6_1Dlg(CWnd* pParent = NULL) 初始化dlg1 *pdlg;可以在构造函数的初始化列表里面初始化 或者在函数体里面初始化也行 比如:CTest6_1Dlg::CTest6_1Dlg(CWnd* pParent = NULL):pdlg(NULL)//构造函数冒号后面跟着的就是初始化列表{//这里是函数体}或者在函数体里面初始化:CTest6_1Dlg::CTest6_1Dlg(CWnd* pParent = NULL){ pdlg = NULL;}

你在构造函数中声明了这么个数组double a[32]={0};也就是说此处的a把类中原有的a给隐藏了,类似于全局变量和局部变量的关系一样.你初始化的是这里新定义的a,而不是类的成员a;你把double a[32]={0};这句删掉就行了

哦char* ch[2]={ (new char[10]), (new char[20])};

指向整型数的指针数组 int *p1[] = {NULL, NULL}; 是没有问题的.原因在于,你申请指向字符的指针数组,数组中的元素是字符串,指针数组保存的是字符串首地址;而对于其他常量,你无法把地址给回,自然无法给指针数组赋值.而我给的NULL是一个空指针,就可以赋给指针数组了.指针数组,元素只能保存指针

#include<iostream>#include<array> using namespace std; int main(int argc, char* argv[]) { int BUFSIZES =3; // 动态变化的 int * foo; foo = new (nothrow) int[BUFSIZES]; // 用new if (foo == nullptr) { // 分配错误 } for (int i = 0; i < BUFSIZES; i++) foo[

CString m_Title = _T("");//题目 CString szCSTR[5];//存储答案选项 for(int i=0; i<5; i++) szCSTR[i] = _T(""); int m_ans_num = 0;//答案个数,单选题题一般四个,多选题题可能5个 DWORD m_ans = 0; //指示正确答案,如正确答案为A,B则mask = A|B; int m_score = 0;//本题分值你这里的初始化不用再加int,DWORD了,你这样等于声明了局部变量并初始化,根本没初始化到类成员

student的构造函数要么无参,要么有两个.你上面不是写的两个参数么.在class student中建立一个subject的数组,可以在私有里面定义一个subject指针,和一个int型数字,在构造函数里动态给subject申请内存,申请多少个自己订.在析构函数里把subject申请的内存释放掉就行.

是C++吗, 下面应该没问题.A *p;p=new A[2];p[0] = A(14,77); //假如类A的有参构造函数为 A(int a,int b) 这样就能调用了.p[1] = A(23,25);

很简单啊,按你错误的那种拷贝函数写法,p是改变的,运行结束后p指向的是拷贝数组的最后一个元素的下一个地址.你得先记录下p的原始地址,拷贝完成后赋值回给pVector(const Vector& rval) :length(rval.length), p(new double[rval.length]){

网站地图

All rights reserved Powered by www.fltk.net

copyright ©right 2010-2021。
www.fltk.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com