Czy ktokolwiek może wskazać różnice między normalnym i anonimowym związkiem (lub strukturą)? Właśnie znalazłem jeden:
funkcji nie można zdefiniować w anonimowym związku.Związek anonimowy i normalny związek
Odpowiedz
Nie potrzebujesz operatora kropki "." uzyskać dostęp do anonimowych elementów unii.
#include <iostream>
using namespace std;
int main() {
union {
int d;
char *f;
};
d = 4;
cout << d << endl;
f = "inside of union";
cout << f << endl;
}
Pomoże to skompilować w tym przypadku ale "NIE" dla normalnej Unii.
Ponadto związek anonimowy może mieć tylko członków publicznych.
PS: Po prostu pomijanie części składni nazwy klasy nie czyni z niej związku anonimowego. Aby związek mógł się zakwalifikować jako związek anonimowy, deklaracja nie może zadeklarować obiektu.
Dobra odpowiedź, +1! Nie miałem pojęcia, że istnieją anonimowe związki zawodowe :) Na wypadek, gdyby ktoś chciał dalej czytać (raz przeczytałem powyższą odpowiedź!) Spójrz na punkt 9.4, punktory 5 i 6 dla niektórych innych subtelności specyfikacji C++ w INCITS/ISO/IEC 14882-2011 [2012]. – Jimbo
O ile mi wiadomo, anonimowe konstrukcje nie istnieją w standardowym C++, chociaż mogą być obsługiwane przez niektóre kompilatory.
Anonimowe związki nie mogą mieć chronionych lub prywatnych członków. Członkowie są dostępni bez użycia nazwy związku (oczywiście, ponieważ nie ma takiego!). Globalne związki anonimowe (nie daj Boże) muszą zostać uznane za statyczne.
- 1. Anonimowy związek i struktura
- 2. Konstruktor i anonimowy związek z członkami const
- 3. Anonimowy związek/struktura klasy z konstruktorem
- 4. Związek interwałów
- 5. związek CoreData zwraca _NSCoreDataTaggedObjectID
- 6. CoreData przejściowy związek przykładem
- 7. CSS nierozerwalny związek
- 8. Związek dwóch zmiennych zbiorów
- 9. Pierwsze wczesne związany związek
- 10. jaki jest związek między masksToBounds i cornerRadius?
- 11. Jaki jest związek między WIC i GDI +?
- 12. Jaki jest związek między docutils i Sphinx?
- 13. Jaki jest związek między UIView i CALayer
- 14. Jaki jest związek między Node.js i V8?
- 15. Jednostka macierzysta i związek w podstawowych danych
- 16. Jaki jest związek między validate() i hasErrors()
- 17. Jaki jest związek między iteracjami i FRP?
- 18. Unidirectional OneToany związek bez joinTable
- 19. Entity Framework opcjonalnie: opcjonalnie związek
- 20. Jak utworzyć związek dwóch DFA?
- 21. związek jest w usuniętej stanie
- 22. Związek Wybierz używając wyrażenia lambda
- 23. UITextView otwarty związek z beczki
- 24. Jaka jest różnica i związek między mpirun, mpiexec i mpiexec.hydra?
- 25. Czy istnieje związek między RTTI a wyjątkami?
- 26. związek, stopień, liczność, warunki opcjonalności zamieszanie
- 27. Jaki jest związek między pasażerem a Capistrano?
- 28. związek między pamięcią wirtualną a zrzutem rdzenia
- 29. Jaki jest związek między __getattr__ a getattr?
- 30. ma_nowy związek do tej samej klasy
[bez nazwy struktura/związek w C] (http://stackoverflow.com/questions/13376494/unnamed-struct-union-in-c), [Anonimowy struct/union w C] (http: // gcc.gnu.org/ml/gcc-patches/1999-06n/msg00376.html) –