Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
7flash
0 / 0 / 0
Регистрация: 06.07.2012
Сообщений: 5
#1

Мультитипная переменная - C++

06.07.2012, 20:07. Просмотров 301. Ответов 8
Метки нет (Все метки)

Объясните, пожалуйста, новичку, если не сложно, как создать переменную с несколькими типами возможных данных(или без типа?) на примере...

C++
1
2
3
int, double x; // Что должно быть вместо этой строки?
cin >> x;
cout << x*2;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.07.2012, 20:07
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Мультитипная переменная (C++):

Мультитипная переменная - C++
Объясните, пожалуйста, новичку, если не сложно, как создать переменную с несколькими типами возможных данных(или без типа?) на примере... ...

Глобальная переменная определена в хидере. Компилятор ругается на то, что переменная переопределена несколько раз - C++
Исходники: /* main.cpp */ #include &quot;hider.h&quot; int main(void) { return 0; } /* foo.cpp */

Переменная или переменная и условие - C++
Привет всем. Стало интересно. Есть предположим функция. В ней ссылкой передается аргумент Status; Как лучше сделать? ...

Переменная - C++
Мне нужная переменная(ые) в 1 байт. Где её можно взять?

переменная - C++
#include &lt;iostream&gt; using namespace std; void func1(); void func2(); int count; // Это голобальная переменная int main()...

Biginteger и переменная - C++
Например есть такое : #include &quot;BigIntegerLibrary.hh&quot; BigInteger a = 65536; cout &lt;&lt; (a * a * a * a * a * a * a * a); ...

8
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,545
Завершенные тесты: 3
06.07.2012, 20:10 #2
7flash, Использовать существующие решения типа boost::any, boost::variant или же использовать union или же использовать указатель на void* или же использовать что-то вроде питона, а не язык со строгим контролем типом и статической типизацией.
0
Ksan
27 / 27 / 0
Регистрация: 02.11.2010
Сообщений: 370
06.07.2012, 20:43 #3

Не по теме:

ForEveR, новичку boost? забавно




7flash, покопай в сторону структур, union'ов
0
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,545
Завершенные тесты: 3
06.07.2012, 20:53 #4
Ksan, Я предложил все возможные варианты. Ну + конечно структура со свитчем по типам и иерархия классов, каждый класс который, кроме базового работает с определенным типом (но тут тоже свитч по типам).
0
Avazart
Эксперт С++
7247 / 5419 / 297
Регистрация: 10.12.2010
Сообщений: 24,054
Записей в блоге: 17
06.07.2012, 21:51 #5
Да ну и стоило бы спросить: зачем?
Может вообще нет такой необходимости....
0
_or_75
-1 / 0 / 0
Регистрация: 18.02.2012
Сообщений: 244
06.07.2012, 22:05 #6
а double не судьба? тоже можно умножать, как и целые так и с точкой

C++
1
2
3
4
5
double x = 5;
cout << x*5;
 
double a = 5.5;
cout << a*5;
0
Avazart
Эксперт С++
7247 / 5419 / 297
Регистрация: 10.12.2010
Сообщений: 24,054
Записей в блоге: 17
06.07.2012, 22:07 #7
а double не судьба? тоже можно умножать, как и целые так и с точкой
Можно, но тут может "всплыть" момент связаный плавующей точностью double
0
_or_75
-1 / 0 / 0
Регистрация: 18.02.2012
Сообщений: 244
06.07.2012, 22:10 #8
Цитата Сообщение от Avazart Посмотреть сообщение
Можно, но тут может "всплыть" момент связаный плавующей точностью double
double -> int

конвертировать, хотя это бреед
0
silent_1991
Эксперт С++
4987 / 3044 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
07.07.2012, 20:50 #9
_or_75, ну приведёте вы double, в котором сначала потеряли точность, а потому умножили на 10, к int. Что, потерянную цифру восстановите?
0
07.07.2012, 20:50
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.07.2012, 20:50
Привет! Вот еще темы с ответами:

const переменная - C++
Вопрос по коду ниже. Насколько я знаю const переменная, это переменная по имени которой нельзя перезаписывать область памяти. Я завёл...

Переменная в массиве - C++
почему я не могу сделать так.... #include &lt;iostream&gt; using namespace std; int main() { int q = 0; int s = {}; }

Идентификатор и Переменная - C++
Привет всем. Почитал что идентификатор это ссылка на память где хранится значение. Например создали переменную int temp = 10; ...

Переменная в цикле for - C++
Пишу консольное приложение, а оно ругается такими ошибками как: main.cpp name lookup of `i' changed for new ISO `for' scoping main.cpp ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru