Re: вызов конструктора для элементов массива
От: sch  
Дата: 24.04.06 09:40
Оценка: 2 (1)
Здравствуйте, Окунь, Вы писали:

О>Как-то столкнулся с проблемой.

О>Есть два класса:

О>class A

О>{
О> A(int);
О> A(float);
О>};

О>Можно ли написать конструктор класса B, чтобы для элементов массива B::а он не пытался вызвать конструктор по умолчанию, а вызывал бы, например, А(int); ?


class B {
  char aaa_buffer[100 * sizeof(A)];
  A *aaa;

  B() {
    aaa = (A *) aaa_buffer;

    A *p = aaa;
    for(int i = 0; i < 100; i++, p++) new (p) A(some_int_parameter);
  }
};
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.