Защищенный производный класс

Прочитайте здесь https://support.flexquarters.com/esupport/index.php?/Knowledgebase/Article/View/2638/44/qodbc-desktop-trou устранение неисправностей---how-to-use -date-and-dateadd-function-in-qodbc

Правильный формат: {d 'YYYY-MM-DD'} Существует функция, позволяющая сделать дату правильной строкой;

Функция:

Function fncqbDate(myDate As Date) As String
myDate = Nz(myDate, Now)
fncqbDate = "{d '" & Year(myDate) & "-" & Right("00" & Month(myDate), 2) & "-" & Right("00" & Day(myDate), 2) & "'}"
End Function

5
задан Bill the Lizard 28 August 2011 в 03:18
поделиться

3 ответа

Почему не возможный создать Производный объект с указателем базы????

Поскольку основа private. Это явно запрещает обработку Вашего класса как a Base экземпляр с внешней стороны. Замеченный с внешней стороны, Вашего класса Derived не подкласс Base, только из самого класса.

Те же счета protected наследование, с единственной разницей, что базовый класс теперь не является частным к собственному классу больше, а скорее ни к какому производному классу также. К внешней стороне, хотя, это ведет себя точно так же, как частное наследование.

6
ответ дан 13 December 2019 в 22:18
поделиться

Вы могли бы хотеть смотреть на эти часто задаваемые вопросы на C++ и наследовании. Разделы 24.5 и 24.6 в частности.

4
ответ дан 13 December 2019 в 22:18
поделиться

Таким образом, я могу создать экземпляр Производного класса как

Полученный d Полученный d1 = новый Полученный; Но создавая экземпляр из указателя Базового класса как

Основа * b = новый полученный перестанет работать.

Это вызвано тем, что Полученный не на самом деле производный класс от Основы при получении procted и конфиденциально??

Это корректно?????

Это точно похоже на Konrad, объяснил.

Это в действительности все еще получено из Основы. Для проверки этого если Вы не переопределяете виртуальные методы в Полученном затем, Базовые версии назовут.

Однако, так как Вы объявили Основу, как защищено, компилятор не позволит Вам автоматически бросить Полученный* к Основе*, потому что Основной суперкласс не видим внешне.

0
ответ дан 13 December 2019 в 22:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: