Где реализация функции print

Mikhail Devyatkov
Offline
Зарегистрирован: 02.12.2019

Нужно разобраться с библиотекой pcd8544-master. В примере используется lcd.print("Hello, World!");. Но в .cpp библиотеки я этой функции не нашел. А скэич работает. Помогите понять это чудо

b707
Offline
Зарегистрирован: 26.05.2017

ищи в библиотеке Adafruit_GFX

Mikhail Devyatkov
Offline
Зарегистрирован: 02.12.2019

но я не использовал adafruit, а использовал #include <PCD8544.h>

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Mikhail Devyatkov пишет:

но я не использовал adafruit, а использовал #include <PCD8544.h>

А что написано в строке №33 этого файла?

Только функции print нет и в Adafruit_GFX

Она наследуется от класса Print, который находится в Вашем IDE в папке hardware\arduino\avr\cores\arduino

astwo
Offline
Зарегистрирован: 10.07.2019

Это чудо называется наследование. Это как жизни. Молодой человек ещё не начал работать, а у него все есть. Вот так и с вашей библиотекой.

Mikhail Devyatkov
Offline
Зарегистрирован: 02.12.2019

я думал что из этой строки static PCD8544 lcd; следует что все функции lcd. из библиотеки PCD8544.

Ну поразбираюсь еще. Спасибо

b707
Offline
Зарегистрирован: 26.05.2017

Mikhail Devyatkov пишет:

я думал что из этой строки static PCD8544 lcd; следует что все функции lcd. из библиотеки PCD8544.

а из этой библиотеки вызывается adafruit_GFX. а из нее следующая...

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

b707 пишет:

Mikhail Devyatkov пишет:

я думал что из этой строки static PCD8544 lcd; следует что все функции lcd. из библиотеки PCD8544.

а из этой библиотеки вызывается adafruit_GFX. а из нее следующая...

с наследованием я еще одно слово слышал - полиморфизм...

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

ua6em пишет:

с наследованием я еще одно слово слышал - полиморфизм...

Опять "неприличными словами"? :-(((