zxqk.net
当前位置:首页 >> 如何用构造函数初始化数组 >>

如何用构造函数初始化数组

你这个初始化时对的,都在构造函数里面初始化变量.card **deck = new card* [52]; 你这个[]前面为啥要有*个呢?这个是为deck分配一块card的内存空间,这个构造函数被调用来分布内存,是通过调用其地址实现的.

thing(int i=x):i(i){}把构造函数换成这个东东,把x的值替换x,直接thing a[1000];就可以了..这样的话,不带参数不会调用默认构造函数,而会调用这个缺省参数的函数.哦这样的话 你可以在thing里弄个类静态变量static n; 然后再外面初始化thing::n=0;初始化的时候thing():i(n){}就可以了!~全局变量也可以达到这个效果.要么 你就用循环吧

C++如何用构造函数初始化字符串数组:比如有这样一个类:Class XXX{int a;char c[10];};方法:XXX::XXX(int num, cosnt char* str){ a = num; strcpy(c, str);}

有两种方法,一种是使用初始化列表,一种是C++11提供的类内初始化.初始化的参数通常为列表,即数组的列表初始化,对于char数组还可以用字符串字面值作为初始化的参数.数组通常使用列表进行初始化,如果列表元素小于数组大小,则

class app(){ public app(){ String arrry[]={1,2,3}; } }

数组一般都是用FOR循环初始化较多吧,如:for(int i =0;i array[i]=2; }

#include<iostream> using namespace std; class matrix { public: matrix(int a1[3][2]) { for(int i=0;i<3;i++) for(int j=0;j<2;j++) a[i][j]=a1[i][j]; } private: int a[3][2]; }; void main() { int A[3][2] = {1,2,3,4,5,6}; matrix a(A); } matrix a(1,2,3,4,5,6);于matrix(int a1[3][2]) 不一致.现在可以了

a是b,c,d的父类.a *list[5]=new a[5];list[0]=new b;list[0]=new c;list[0]=new d;

c++不支持带参数对象数组的初始化的.你可以为subject写个无参数构造函数,然后在code的构造函数里对每个对象进行赋值.如果数据可以是static的,那就可以静态的初始化表去初始化它.

找规律 你除了最后一条 其他全部都是一样的 可以用for循环赋值 减少编码量

网站首页 | 网站地图
All rights reserved Powered by www.zxqk.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com