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

Union - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Перебор значений double http://www.cyberforum.ru/cpp-beginners/thread348148.html
Привет всем, весь день сижу и думаю над алгоритмом следующего :wall: Нам известна функция которая принимает один параметр типа double и возвращает double. Реализация функции неизвестна, но...
C++ массивы в define Ребят, подскажите плиз. Имеется программа для работы с неким исполнительным механизмом посредством СОМ-порта из-под никсов. Форматы запросов регламентированы протоколом обмена. Для сокращения... http://www.cyberforum.ru/cpp-beginners/thread348100.html
Шифр Атбаш C++
Начался новый учебный год, не успел оправиться от сесси, как задали новую курсовую. Как бы то ни было учиться нужно, ну по крайней мере пытаться. Задание выглядит примерно так: "Шифр простой замены,...
C++ Значение функции
Вычеслить значение ф-ции S. Если max та min ф-ции, что вычисляют min та max значение для величин (a, b, c). S= max(в квадрате) (a,b,c)-2(в степени x)*min(a,b,c)/sin2+max(a,b,c)/min(a,b,c).
C++ Вычислить значения выражения... http://www.cyberforum.ru/cpp-beginners/thread348089.html
на языке C 1. Вычислить значение выражения при различных вещественных типах данных (float и double). Вычисления следует выполнять с использованием промежуточных переменных. Сравнить и объяснить...
C++ как правильно построить массив Подскажите пожалуйста, как правильно построить массив? Такого рода: vertex **v = new vertex *; vertex *v = new vertex ; Пыталась сделать что-то самостоятельно: vertex** massiv(){ //... подробнее

Показать сообщение отдельно
alex_x_x
бжни
2447 / 1652 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
05.09.2011, 14:33
допустим ты в пакете получаешь данные и при этом знаешь, что можешь получить десять разных типов, тогда обычно делают так

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
struct StructPacket
{
 
   union
   {
       int m_int;
       float m_float;
       double m_double;
   };
 
   enum
   { 
       E_INT,
       E_FLOAT,
       E_DOUBLE
   } m_type;
 
};
 
int main()
{
   StructPacket packet;
   packet.m_type = StructPacket::E_FLOAT;
   packet.m_float = 10.5f;
   return 0;
}
тажа реализация всех Variant'ов через union делается

Добавлено через 4 часа 7 минут
C
1
2
3
4
5
6
7
8
9
10
11
typedef union jvalue {
    jboolean z;
    jbyte    b;
    jchar    c;
    jshort   s;
    jint     i;
    jlong    j;
    jfloat   f;
    jdouble  d;
    jobject  l;
} jvalue;
например
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru