Witam,
Czytam książkę C# 5.0. Programowanie. Tworzenie aplikacji Windows 8, internetowych oraz biurowych w .NET 4.5 Framework
autorstwa Ian Griffiths i nurtuje mnie jedno zdanie. Myślę, że jest tu błąd bo wszędzie w internecie znajduję dane odwrotne na ten temat a mianowicie cytuje:
"Struktury pozwalają używać inicjalizatorów tylko w odniesieniu do zwyczajnych pól składowych( a zatem nie można ich stosować ani w stałych, ani w składowych statycznych).
Z tego co wiem w strukturach nie można inicjować pól składowych ( można to jedynie robić w konstruktorze - i to na dodatek tylko takim który ma co najmniej jeden argument - wtedy należy zainicjować wszystkie pola dostępne w strukturze aby struktura mogła funkcjonować.
Natomiast z tego co wiem pola statyczne oraz stałe można inicjalizować poza konstruktorem.
**W takim razie jaki sens ma te zdanie? Co autor miał na myśli?
**
Wcześniej autor pisze również "Struktury zapewniają nieco mniejsze możliwości, gdyż ich domyślny sposób inicjalizacji zawsze przypisuje składowym wartość 0, dlatego też w ich przypadku wszelkie inicjalizatory należy pomijać" - z tego co wiem jest to nawet zabronione. Chyba że jest to w ciele konstruktora co najmniej jedno argumentowego.
Proszę o wypowiedź osób które są obeznane w temacie.