Tartalomjegyzék:
Meghatározás - Mit jelent a változó típus?
A C változatban a módosítható típus egy olyan objektumtípus, amelynek adatait, például tulajdonságait, adatait és mezőit a létrehozása után módosíthatjuk.
A módosítható típusokat párhuzamos alkalmazásokban használják, ahol a módosítható érték típusú objektumokat a veremben a Common Language Runtime (CLR) tartja fenn. Ez bizonyos mértékű optimalizálást tesz lehetővé, ami gyorsabbá teszi, mint a halomhoz rendelt objektumok. Annak elkerülése érdekében, hogy a szinkronizálási hibák párhuzamos alkalmazásokban előforduljanak a megosztott adatokhoz hozzáférő több szál miatt, a módosítható típusokat valamilyen reteszelő mechanizmussal használják.
Természetes jellegéből adódóan a módosítható típusú adatok a futtatás során módosíthatók, így a módosítható típusokat gyakran használják, amikor az objektum nagy mennyiségű módosítható adatot tartalmaz. Bár a módosítható típus nem olyan szálbiztos és biztonságos, mint a változhatatlan típus, gyakrabban használják az érték típusú változókkal, amelyeket a veremben allokálnak, javítva a teljesítményt.
A Techopedia magyarázza a Mvable Type-t
Az összes beépített értéktípus, mint például az int, a dupla stb., Változtatható típusok, és változtathatatlanná tehetők, ha a módosítót "csak olvashatóan" hozzáadjuk a változók elé. Ha a módosítható referenciatípust csak olvasható módosítóval adják meg, a C # fordító figyelmeztetést generál. Az olvasható módosító hozzáadásával a referencia típus mezőjéhez a mező nem helyettesíthető a referencia típus másik példányával, hanem lehetővé teszi a mező példányadatainak a referencia típuson keresztüli módosítását.
Például a StringBuilder egy módosítható referenciatípus a .NET-keretrendszer könyvtárban, amelyen keresztül az ilyen típusból létrehozott példány karakterláncának értéke karakterek hozzáadásával, eltávolításával, cseréjével vagy beszúrásával módosítható.
A módosítható típust nem szabad származtatni nem változtatható típustól, mert a származtatott osztályban létezik olyan virtuális módszer, amely felülbírálja azt, hogy a változatlan tagok felülíródjanak.
A módosítható típus fő korlátozása az, hogy miközben a módosítható típusú objektumot (például structot) átadják egy helyi változó hozzárendelésével vagy egy paraméterként egy módszerhez, az objektum értéke kerül átadásra, és nem maga az objektum. Ezzel az objektum másolata meg van mutálva, és nem az eredeti. Ez a viselkedés váratlan hibákat idézhet elő.
