русский
Germany.ruForen → Архив Досок→ Programmierung

Чего они все же хотят?

07.12.07 21:34
Re: Чего они все же хотят?
 
AlexNek старожил
AlexNek
in Antwort Murr 05.12.07 00:44
\Да нет, концепт - правильный.
Смотря с какой стороны посмотреть. Если есть взаимоисключающие правила, то это уже неправильно. Пусть даже по отдельности эти правила верны.
\Просто данный концепт требует иметь в реализации два типа виртуальных функций с различным поведением.
Ну тогда это просто просто разные дороги и функции должны называться как то по другому что бы не вводить в заблуждение.
\Ты уверен, что сможешь создать концепт по конкретной реализации?
Ты не так меня понял. Я имел в виду что у меня была задача и я набросал концепт ее реализации.
\Прими как аксиому - Концепт - первичен, имплементация - вторична.
Можно согласится, с тем условием, что если концепт нельзя реализовать нормально в желаемой реалиции, то такой концепт нам нафиг не нужен.
\Пока имеется обратная ситуация - концепт, как он определен, дает ощутимые преимущества
Вполне возможно, что для построения компилятора С+++ это был бы и неплохой концепт, но если мне надо сделать прогу для рисования многоугольников то ну его нафик.
\Будем подгонять или делать имплементацию?
Ну не стричь же всех под одну стрижку. Считаем плюсы, минусы данного требования концепта против сложности реализации.
\Перекрой доступ к структуре.
Каким образом? Когда мне ее как параметр в функцию передавать.
\Память под статический объект выделяется на этапе трансляции
Я бы сказал резервируется место требуемого объема. А конкретный адрес будет задействован когда система загрузит нашу программу. Но мне никто не запрещает вызввать в конструкторе оператор нью или другие фунции. Кроме этого поведение конструктора может зависеть от входных параметров, которые могут быть просто неизвестны на этапе компиляции.
Хотя в стандарте я не нашел прямого указания \может и есть где-то\ когда вызывается конструктор но 12.1.2 я могу интерпретировать только как непосредственный вызов конструктора, как иначе мне проиницилизировать память конкретными значениями. Ну и кстати, виртуальных конструторов быть не должно.
12.1 - Constructors [class.ctor]
2- A constructor is used to initialize objects of its class type.
4- A constructor shall not be virtual (class.virtual) or static (class.static).
\СБилдере это просто не разрешается для копонентных классов
Ну это уже издержки конкретной реализации.
\По возможности держусь... держался - до С#... подальше от поделок билли
Знаешь, когда надо было только на МС работать тоже кляли его со всех сторон. Когда попробовал другие продукты, тоже по нужде, то стал уже жалеть по нему. По крайней мере, лучше МСДН я ничего не знаю.
Хотя что было было бы с конторой Била если бы они не сманили архитетора с Борланда. Не знаю застал, ли ты Турбо Визион , но идея Студио Нета сильно его напоминат. По крайней мере визуальное наследование форм там было лучше реализовано лет еще 20 назад.
 

Sprung zu