我如何可以通过构造函数参数传递给一类是结构的数组?我试图用一个链表实现。我有区域各自具有一个链表,S11中的阵列。 (其实我要的这些二维数组)。我找不到/找出语法来实际调用使用非默认参数/参数的构造函数。
我想保持S11中的一类。
class Sll
{
public:
unsigned long count;
unsigned long uMaxEntries;
void *pDataArray;
int iSizeOfEachEntry;
Sll( unsigned long uInSizeOfEachEntry, unsigned long uInitNumEntries = INIT_NUM_ENTRIES );
}
Sll::Sll(unsigned long uInSizeOfEachEntry, unsigned long uInitNumEntries)
{
uMaxEntries = uInitNumEntries;
iSizeOfEachEntry = uInSizeOfEachEntry;
pDataArray = malloc(iSizeOfEachEntry * uInitNumEntries);
count=0;
}
...
struct Region {
int lotsOfOtherStuffToo;
Sll sllParticles;
};
...
for(int ii = 0; ii < regionsX; ++ii)
ppRegions[ii] = new Region[regionsY]; // How call the Sll constructor?
该阵列是一个有点分心在这里。
你有一个类Region
不能是缺省构造的,因为它包含类型Sll
也不能缺省构造中的一员。所以,你给它的构造函数。
然后,与解决,你又回到了数组:你如何创建非默认Region
对象的数组? By using a vector。