В последнее время я изучаю C, и я натолкнулся на концепцию Союза. Мне нравится, потому что он может использоваться для представления любого типа данных. Конечно, это полезно только для некоторых редких и особых обстоятельств. В C++ все делается с помощью классов. Конечно, аналогичные функции, такие как Union, могут быть реализованы с использованием классов. Так что я хотел знать, поддерживает ли C++ эквивалент Союза, так что я не изобретаю колесо повторно.C++ эквивалент Союза в C?
1
A
ответ
5
Возможно, вы захотите Boost.Variant
.
C++ имеет union
как в C, а потому, что union
не отслеживает, какой тип хранится в нем, он не сможет выполнить правильный деструктор, если он используется с нетривиальными типами. Полученные в результате ограничения на использование union
в C++ делают его весьма не общим.
+0
ha, никогда не думал о Boost.Variant как своего рода тип объединения, +1 для dem POVs! – ScarletAmaranth
Смежные вопросы
- 1. C# эквивалентно C союза
- 2. C++ Союза
- 3. Размер союза в C
- 4. C++ неограниченного союза обходного
- 5. C# союза шпагат
- 6. инициализации Союза в C++ и C
- 7. союза вопрос сортировочных в C#
- 8. C# Общий список вопросов союза
- 9. Getter для частного союза - C++
- 10. C# эквивалент Obj-C в
- 11. Эквивалент numpy.nan_to_num в C/C++
- 12. C++ эквивалент CString в C#
- 13. BITMAPFILEHEADER эквивалент в c/C++?
- 14. C# эквивалент C++ mem_fun?
- 15. C эквивалент STL C++
- 16. C# эквивалент C sscanf
- 17. C++ эквивалент C fgets
- 18. C эквивалент C++ cin.peek()
- 19. Установки союза в C++ с использованием бережливости
- 20. нетривиальный конструктор структуры внутри союза в C++
- 21. strstr() эквивалент в C#
- 22. PathCanonicalize эквивалент в C#
- 23. эквивалент LinkedHashmap в C++?
- 24. Эквивалент NSMutableArray в C++?
- 25. Эквивалент Guice в C#
- 26. privateEncrypt эквивалент в C#
- 27. NSNotificationCenter эквивалент в C++
- 28. Эквивалент CreateObject в C++
- 29. эквивалент ereg_replace в C#
- 30. эквивалент Или в C#
Союзы также существуют в C++. –
C++ имеет союзы ... меньше троллинга bitte. – ScarletAmaranth
почти все, что C имеет C++. – yngccc