|
|
|
| У меня в классе есть статическая функция. Можно ли как-нибудь сделать, чтобы эта функция получила информацию о динамическом типе класса (например, B наследник A, я вызываю B::a(), где a --- статическая функция класса A. Тогда функция A::a должна узнать, что мы вызвали B::a(), а не A::a(), в лучшем случае --- вызвать реализованную в B абстрактную функцию A) | |
|
|
|
|
|
|
|
для: Osipov
(10.07.2007 в 18:18)
| | Имя класса по объекту вы можете получить при помощи функции get_class(). | |
|
|
|
|
|
|
|
для: cheops
(11.07.2007 в 10:40)
| | Объекта нет --- функция статическая. | |
|
|
|
|
|
|
|
для: Osipov
(11.07.2007 в 14:00)
| | Получить имя текущего класса можно при помощи предопределённой константы __CLASS__ | |
|
|
|
|
|
|
|
для: Osipov
(10.07.2007 в 18:18)
| | перегрузить эту функцию в классе B.
статический метод работает с самим классом, а не с экземпляром.
Сам класс - у Вас - B, а не A.
Из него уже можно вызвать A::a() , передав при необходимости параметром аспект вызова. Если надо. | |
|
|
|