Здравствуйте, Larev, Вы писали:
L>В конструкторе не совсем хорошо делать действия, если есть вероятность, что объект будет создан раньше, чем то, с помощью чего объект, например инициализируется (в данном случае пайп). Лучше это вынести за пределы конструктора в кокой-нибудь метод, чтобы контролировать эти действия, поскольку если вы захотите объявить объект (допустим сделать членом класса), то не остается другого способа, как объявить указатель, а потом когда это станет возможно выделить память под объект. А если вынести из конструктора, то не надо об этом заботиться, а вызвать метод в нужный момент. L>Короче из всего сказанного, в конструкторе нужно выполнять только те дейтвия, которые не зависят от внешних факторов, условий и возможно не созданных еще объектов.
мг. хорошо. получается если я не хочу ломать интерфейс. то мне нужно вызывать это наполнение коллекции при перовом вызове какго либо метода этого интерфейса. Получается только так...
Изначально в интерфейсе я предусмотрел что-то типа метода FillCollection, но мне сказали что это сакс, мол это всё надо скрыть от юзера. И я как бы с этим согласен, поэтому убрал этот метод. Теперь получается что вызов из конструктора коряво, сделать как я описал выше тоже коряво... Откуда ж позвать его? :)
Я понимаю что идеальных ситуаций не бывает и всё сделать красиво не получиться. но....