Category: техника

Category was added automatically. Read all entries about "техника".

Ковариантные возвращаемые типы

Есть в C++ такая фича. Допустим, есть класс с виртуальным методом, возвращающим указатель на себя. Наследуясь от него, можно переопределить этот метод, причем в качестве возвращаемого типа допустимо использование указателя на производный класс. Этот механизм называется ковариантными возвращаемыми типами. Каноническим примером послужит метод clone, создающий копию объекта в куче и возвращающий указатель на него. Примерно так это может выглядеть:
 

Collapse )

  • Current Music
    ERA - [Era Classics #06] Malher + Adagieto + 5th Symphony

Структуры данных .NET

Недавно в программе, реализуемой на C#, понадобился тип данных множество. Беглый поиск при помощи IntelliSense в пространстве имен System.Collections.Generic не дал положительных результатов. Священный источник знаний жрецов до-диеза оказался малоинформативным в данном вопросе. Впрочем, вскоре я обнаружил, что в .NET 2.0 такой простой и полезной структуры данных нет, а появится лишь в .NET 3.5. Казалось бы, мелочь, но странно то, что структуры данных носят намного более фундаментальный характер и имеют большую значимость (и необходимость), чем какая-нибудь сериализация или механизм reflection. Так или иначе, быдлокодеры разработчики дотнета не реализовали ни множество, ни удобный STL'ный класс pair, ни многого другого (разнообразных деревьев), касаемого структур данных.

Не забывайте, как с помощью веревки достаточной длины стрелять себе в ногу :)
  • Current Music
    Theatre of Tragedy - [Aegis #01] Cassandra