хорошо)
вроде что то получается. уже можно микро библиотеку делать. безполезную конечно )
class my_test {
public:
static String s_value;
};
String my_test::s_value;
my_test first;
void setup(){
Serial.begin(9600);
}
void loop() {
first.s_value = "arduino :)";
Serial.println (first.s_value);
}
Не нужно делать бесполезную библиртеку, надо делать полезный объект. С++ - это объектно ориентированный язык (если это Вам что-то говорит).
Можете обьяснить, в чем смысл слова static
на третьей строке?
а чтоб было интереснее, я ваш код слегка модифицирую, добавив второй экземпляр класса.
запустите и посмотрите, что получится. Попробуйте обьяснить.
Чудо ))
вот этот момент не понял. но если static удалить. ошибка будет, пытался это делать поэтому оставил как есть.
Может это обьявлен header (заголовок)?
пока что в целях обучения такая задача была )
создали класс с именем my_test
public - будет отображаться и в чамом скетче а не как тип private который закрытый и доступный только в файле cpp.
создали переменную типа string с именем ```
s_value
my_test first, second; - классу присваиваем имена first и second
[quote="genia1991, post:43, topic:10743"]
first.s_value = "Hello ";
second.s_value = “arduino :)”;
[/quote]
hello arduino :) как хранится в памяти как string и выводится в serial как hello arduino :)
пошла жара…
my_test first, second; - классу присваиваем имена first и second
hello arduino :) как хранится в памяти как string и выводится в serial как hello arduino :)
нет, заведу ка я все таки тему по перлам на форуме.
Вам же сказали:
а вы теоретизируете. Запускайте, давайте.
Можно ли мне уточнить?
Все дружно глумятся над неконфликтным чайником, который в меру своих способностей пытается учиться. Я же говню обычно чрезмерно “гордых человеков”, требующих безусловного уважения.
Но эталонный хам - за совершенно невинную шутку про “знакомство с папой” - при всём этом я???!!! ЁВМ! Это не похоже на полную несправедливость? Вот реально бесит!
разве?
Человек написал класс, я ему по этому классу вопросы задаю.
Глумление где???
ошибка там возникает не поэтому…
Ну да ладно, вы сначала мою задачку запустите, а потом посмотрим
завтра запущу уже. сейчас не могу уже.
Наверное в том скетче ошибка
Если это так то думаю смогу исправить ее.
Читаю книга по с++ на 1000 стр сейчас
Вспоминается анекдот про машинистку с 1000 знаков в минуту.
Переменные-члены класса можно сделать статическими, используя ключевое слово
static. В отличие от обычных переменных-членов, статические переменные-члены
являются общими для всех объектов класса.
он получается отрабатывает значение только один раз без хранения предыдущего значения и на его место можно уже дописывать другой String ведь предыдущий он стирает с памяти?
Поэтому в примере и был добавлет еще один:
second.s_value = "arduino :)"
Тваю ж дивизию! Да, запустите ж Вы его, наконец! И пока не запустите не пишите сюда ни одной сраной буквы! Вообще - ни одной!
А то, блин запустить
а ахинею несть - пожалуйста!
Дорогой! У тебя инет отключили? В процессе обучения ты где запускаешь свои нетленки?
Ты не слышал про http://wokwi.com? Ничего, кроме инета для этого не нужно.
я пять раз перечитал
Рановато, мне кажется, юному падавану библиотеки писать свои. Для начала нужно разобраться с классами (хотя и без них можно библиотеки писать, но с ними в разы удобнее).
Начать с определений, хотя бы.
1) Что такое класс?
2) Что такое экземпляр класса?
3) Что такое член класса?
4) Что такое метод класса?
А потом уже можно и главные “фишки” ООП добавить:
5) Что такое инкапсуляция?
6) Что такое наследование?
7) Что такое полиморфизм?
Без 5-7 сейчас можно и обойтись легко, на данном этапе, а вот без 1-4 - ну никак.