Попытка разработать понимание функционирования библиотеки SDFat для Arduino IDE. Я наткнулся на эти строки кодов в файле заголовка SDfat.h.Понимание объявления класса в C++
/**
1* \class SdBaseFile
2* \brief Class for backward compatibility.
3*/
4 class SdBaseFile : public FatFile {
5 public:
6 SdBaseFile() {}
7 /** Create a file object and open it in the current working directory.
8 *
9 * \param[in] path A path for a file to be opened.
10 *
11 * \param[in] oflag Values for \a oflag are constructed by a
12 * bitwise-inclusive OR of open flags. see
13 * FatFile::open(FatFile*, const char*, uint8_t).
14 */
15 SdBaseFile(const char* path, uint8_t oflag) : FatFile(path, oflag) {}
16 };
Если кто-то может объяснить мне, как работает эта декларация класса.
1) Что делает :public Fatfile
в строке # 4.
2) Почему существуют два конструктора в строке # 6 и строке # 15 (если они вообще таковы).
Мое понимание ограничено отсутствием синтаксического понимания определения/объявления здесь. Цените помощь.
Благодаря
1. Это означает, что этот класс получен из другого класса с именем FatFile. 2. Класс может быть создан двумя способами, поэтому есть два конструктора. Я предлагаю вам прочитать хорошую книгу на C++ –
Любой учебник/книга на C++ будет подробно отвечать на эти вопросы. 1) Наследование. 2) Да, это конструкторы, первый - конструктор по умолчанию, другой - конструктор, который принимает входные данные, чтобы открыть файл. –
Читайте о перегрузке наследования и функции. Рекомендации по книге см. В [здесь] (http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list). –