数组和结构在C ++中初始化

时间:2010-10-22 11:04:37

标签: c++ arrays struct

我想在C ++中初始化struct和array的一些元素。

在C中你可以这样做:

unsigned char array[30] = {[1] = 4, [20] = 4};
struct mystruct 
{ int i;
  int j;
}
struct mystruct e = {.j = 2};

但是我无法用C ++做到这一点。有没有办法实现这种指定的初始化器?

2 个答案:

答案 0 :(得分:1)

C++ struct中有构造函数(就像class),所以你总是可以在其中初始化var。

答案 1 :(得分:0)

初始化数组或结构中的所有元素总是好的,以避免许多错误。

以下可能对您有帮助。

结构初始化

struct myStruct

{

   int i;

   int j;

   myStruct()
   {
       j=10; //default Constructor     
   }

};

数组的初始化:

unsigned char array[5];

array[0]='A';

array[2]='C';