Уважаемые товарищи, сколько-то лет назад я пытался создавать проекты в среде Atmel Studio IDE. Там файл XXX.h подключался через директиву препроцессора #include, а файл ХХХ.cpp добавлялся через манипуляцию Add. Объяснялось это так: когда в тексте программы встречается прототип функции из файла XXX.h, из файла XXX.cpp берется соответствующая часть кода и вставляется в текст программы. В текстах, посвещенных ардуино, файл XXX.cpp не упоминается,хотя в библиотеках он присутствует.
Что бы это значило?
Использование библиотек в A... IDE
-
Сергей_А_М
- Родился
- Сообщения: 7
- Зарегистрирован: Пн фев 02, 2026 11:44:24
Re: Использование библиотек в A... IDE
Это значит что ты не понимаешь азов и не умеешь пользоваться поиском.
https://microsin.net/programming/avr/ar ... ocess.html
https://microsin.net/programming/avr/ar ... ocess.html
Re: Использование библиотек в A... IDE
Поскольку Ардуина использует С++ язык, то если придерживаться классовой идеологии, то файл *.cpp в принципе то и не обязателен. C++ допускает написание исходных текстов прямо в файле *.h.
Вынос методов из класса в отдельный файл *.cpp допускается, но необязателен.
Код: Выделить всё
file myClass.h
class myClass {
public:
static void Foo1()
{
/* текст .... */
}
sratic void Foo2()
{
/* текст .... */
}
Re: Использование библиотек в A... IDE
Вообще то там для АВРок GCC... Тот же, что и в АВР студии, но с дополнительным расширением С++. Как там все взаимодействует - удел разборок специалистов по компиляторам и устройству IDE, а не пользователя для которого существуют "рамки "референса"" и общие правила написания проектов под Си / С++.
А вот для других семейств МК может и чего другого подключаться, причем не в "явном виде".
Так что лучше начинающим и просто пользователям с вариантами изврата при написании не экспериментировать без глубококопания в устройстве той ардуино IDE.
Особо для 2.3.х с новыми платформами.

По самому исходному вопросу от Сергей_А_М...
Из личного опыта - никто ж не запрещает файлы *.c просто переименовать в *.cpp

А вот для других семейств МК может и чего другого подключаться, причем не в "явном виде".
Так что лучше начинающим и просто пользователям с вариантами изврата при написании не экспериментировать без глубококопания в устройстве той ардуино IDE.
Особо для 2.3.х с новыми платформами.
По самому исходному вопросу от Сергей_А_М...
Из личного опыта - никто ж не запрещает файлы *.c просто переименовать в *.cpp
Re: Использование библиотек в A... IDE
Поскольку в ардуино-среде стоит компилятор языка С++, то он может использовать все базовые возможности языка C++. В базовые возможности входит поддержка классов м методов, а значит, в полной мере может использоваться. Классы в С++ появились в самую первую очередь. Даже как бы наоборот, прародителем С++ был вариант языка Си - "Си с классами"., и дальше уже пошло отаетвление
Re: Использование библиотек в A... IDE
Может использоваться, а может и не использоваться - тот, кто пишет программу под ардуино IDE сам определяет что и как в ней будет использовать.
Практически пока в большинстве случаев внимание уделяется именно платформам на АВРках, второе место - платформы на STM и RP2040 разделили с платформами на ESP8266/ESP32.
Но тут, на радиокоте, с ардуиной и ее "С++" особенностями похоже я первый возню затеял как с действительно достойной средой для практической работы (и то "в процессе учебной работы и обсуждений" и только для платформ с АВР МК
). Пока что большая часть матерых котяр считает данную IDE "недостойным школярством" (порой таки заслуженно из за весьма большого круга простых плагиаторов, вызванного простотой входа/освоения с минимальным уровнем квалификации).
Из реальных работ по популяризации на уровне простого/продвинутого пользователя (и к сожалению только с упором на AVRки да чуток "зацепа" ESP) пока что можно отметить лишь
https://alexgyver.ru/lessons/
да энное количество литературы из тырнет ресурсов...
В отличии от GCC для АВРок из АВРстудии - там хоть у ARV публикации были...

Практически пока в большинстве случаев внимание уделяется именно платформам на АВРках, второе место - платформы на STM и RP2040 разделили с платформами на ESP8266/ESP32.
Но тут, на радиокоте, с ардуиной и ее "С++" особенностями похоже я первый возню затеял как с действительно достойной средой для практической работы (и то "в процессе учебной работы и обсуждений" и только для платформ с АВР МК
Из реальных работ по популяризации на уровне простого/продвинутого пользователя (и к сожалению только с упором на AVRки да чуток "зацепа" ESP) пока что можно отметить лишь
https://alexgyver.ru/lessons/
да энное количество литературы из тырнет ресурсов...
В отличии от GCC для АВРок из АВРстудии - там хоть у ARV публикации были...