Функция, которая возвращает имя класса в D

Скажем, классы A1, A2, ..., An все расширяют абстрактный класс B. Я бы хотел, чтобы у A1, ..., An была функция, возвращающая строку имени класса. Это, конечно, известно во время компиляции, но я хотел бы реализовать эту функцию в B и используйте наследование, чтобы все Ai: s получили эту функциональность.

В java это можно легко сделать, позволив B более или менее иметь метод

String getName() {
    return this.getClass();
}

. Итак, как мне сделать это в D? Кроме того, есть ли способ, используя черты или что-то подобное, определить, какие члены класса являются общедоступными?

7
задан Per Alexandersson 22 June 2011 в 18:46
поделиться