Как инициализировать массив массивов массивов?
Начнём с того, что double ***array -- не массив массивов массивов, а указатель на указатель на указатель на double. Массив массивов массивов -- это double array[A][B][C]. Инициализируется он как обычно:double array [A][B][C] = {
    {
        {
            1., 2., 3., ...
        }, {
            ...
        }
    }, {
        ...
    }
};
Вот что получилосьvoid neural_network_lib::Weight::fSetMemWeights()	//+
{
	this->d->pppdWeights = new double**[this->d->iQuantLayer];
	for (int i = 0; i < this->d->iQuantLayer; i++)	
		this->d->pppdWeights[i] = new double*[this->d->piQuantNInLayer[i]];
	for (int i = 0; i < this->d->iQuantLayer; i++)
		for (int j = 0; j < this->d->piQuantNInLayer[i + 1]; j++)
			this->d->pppdWeights[i][j] = new double[this->d->piQuantNInLayer[i + 1]];
}