как присвоить значение переменной являющийся частью структуры при ее объявлении
- Войдите на сайт для отправки комментариев
Пт, 01/05/2015 - 17:13
всем привет
как присвоить значение переменной являющийся частью структуры при ее объявлении
struct S_key { byte pinkeyup=3; byte pinkeydown; } key;
приведенный пример не компелируется , и возможноли это вообще ??
Первая же ссылка в гугл http://www.prostocpp.narod.ru/initialization_of_structures.html
Может научиться искать пора?
Но самое интересное - у меня приведённый пример как раз очень даже "компелируется". :)
Опять, что ли, какие-то особенности собственных стандартов GCC-компилятора?
приведённая вами ссылка не является ответом на вопрос, так как присвоение происходит не в теле объявления, а отдельно, и напроч теряется читаемость кода ,А ЕСЛИ ВСТРУКТУРЕ МАССИВ вообще караул
----
у меня версия 1.0.6
Ок, если не ясно, то члены структур в Вашем объявлении нельзя инициализировать, согласно стандарта. Если gcc в очередной раз отличился, то я рад за Вас. Продолжайте компЕлировать дальше.
Чтобы не было недопонимания, я привёл ссылку как правильно инициализировать структуры, не нравится, дело Ваше. Язык такой, пишите Страуструпу и иже с ним, пусть они для Вас особый язык напишут.
Ок, если не ясно, то члены структур в Вашем объявлении нельзя инициализировать, согласно стандарта.
именно этого ответа я и ожидал , но надеялся на лучшее
Есть вариант для C++, добавить в структуру конструктор. На практике бывает нужно крайне редко.
Я с телефона, не могу вставить код, покажу так:
struct key
{
int val;
int num;
key()
{
val = 3;
num = 5;
}
};
По-моему, описать структуру одновременно с объявлением можно не только в GCC, но я бы сделал это так:
Опять же, не совсем уверен, а проверять сейчас не хочу - поздно уже. Так что, если ошибся - мои извинения.
А вообще, да, я обычно именно определяю тип, а уже потом создаю переменную, или сколько угодно переменных, этого типа. Кажется, сейчас так считается правильней.
-----
У меня Arduino IDE 1.5.7