1 / 1 / 0
Регистрация: 04.12.2017
Сообщений: 58
|
||||||
1 | ||||||
Как узнать тип переменной03.02.2021, 08:40. Показов 2013. Ответов 6
Всем привет! У меня возникла задача, решить которую я не смог. Пишу в PlatformIO IDE для Arduino Mega. Задача состояла в определении типа переменной в аргументе метода класса. Если, например, аргумент был типом int16_t, то подставлялась бы переменная-член класса такого же типа и аргумент копировался бы в эту переменную. Ну и соответственно с другими типами. Искал в интернете примеры, нашёл решение через typeid:
Пробовал подключить файл так, #include <typeinfo.h>, на что мне PlatformIO выдавало ошибку невозможности найти такой файл. Пробовал также #include <type_info.h>, та же ошибка. Добавлено через 1 час 27 минут Также выскакивает ошибка "cannot use typeid with -fno-rtti"
0
|
03.02.2021, 08:40 | |
Ответы с готовыми решениями:
6
AVR Studio 4 как узнать значение переменной при отладке? Как узнать тип переменной? Как программно узнать тип переменной? Как узнать,какой тип данных хранится в переменной String? |
Модератор
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,521
|
|
03.02.2021, 10:44 | 2 |
ну а почитать что то про
typeid ?? например https://docs.microsoft.com/ru-... w=msvc-160 там в примере ясно написано #include <typeinfo> и такие вопросы задаются в ветке C++, ибо к AVR имеют мало отношения
0
|
1 / 1 / 0
Регистрация: 04.12.2017
Сообщений: 58
|
|||||||||||||||||||||||||||||||
03.02.2021, 14:12 [ТС] | 3 | ||||||||||||||||||||||||||||||
Попытаюсь ответить... Так тоже не подключается. Все примеры, что я находил, связанные с этой темой по отношению к программе написанной для микроконтроллера, я не нашёл (не скажу что искал усердно), а видел только то, что написано для компьютерных программ, где например есть такой код:
Пробовал почитать, немного пока понимаю в некоторых вещах. Понял из прочитанного, (и ранее предполагал) то, что когда у меня выскакивает ошибка это значит, что компилятор не может выполнить проверку во время компиляции. Я предполагал, что это из-за того, что я пытаюсь (попытаюсь объяснить) узнать тип указателя на метод класса, когда этот самый метод возвращает какое-то значение, тип которого неизвестен (как я думаю, судя по коду) во время компиляции. Попытался также провернуть такое с уже известными по типам инициализированными глобальными переменными - те же ошибки... Добавлено через 20 минут Может тогда привести конкретно строки моего кода и что я хочу... Попытаюсь выложить и объяснить понятно. Есть класс со статичными PRIVATE переменными-членами, а также со статичными методами получения значения этих переменных класса.
Кто чем поможет...?
0
|
Тутошний я
|
|
03.02.2021, 16:22 | 4 |
видимо решили, что программисту виднее какой тип передаётся.
мне попадался код, 2 функции с одинаковыми названиями, но данные передавались разных типов. одна функция преобразовывала тип и вызывала другую функцию. переменная одна была. а здесь видимо придётся писать 3 функции. каждую под свой тип.
0
|
Модератор
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,521
|
|
03.02.2021, 20:19 | 5 |
т.е разница только в возвращаемых типах?
не уверен, но по моему, для перегрузки функций нужны или разные типы или количество аргументов, по возвращаемым типам функции не перегружаются но спросить об этом лучше в https://www.cyberforum.ru/cpp-beginners/
0
|
1 / 1 / 0
Регистрация: 04.12.2017
Сообщений: 58
|
||||||
04.02.2021, 09:36 [ТС] | 6 | |||||
ValeryS, я тут ошибку нашёл в том что пытался объяснить. Написал
Не так нужно было мне написать - одинаковые же названия у указателей! Надо было так:
0
|
28 / 21 / 8
Регистрация: 05.08.2012
Сообщений: 108
|
|
09.02.2021, 13:24 | 7 |
точно. перегружаться должны входные параметры. Такой вариант перегрузки не катит.
0
|
09.02.2021, 13:24 | |
09.02.2021, 13:24 | |
Помогаю со студенческими работами здесь
7
Узнать тип переменной Узнать тип переменной Узнать тип переменной template, узнать тип переменной Как определить тип переменной, ссылающейся на определённый класс? Нужен именно тип, а не ссылка на обьект! Получить тип переменной и задать её переменной типа тип Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |