Itthon Fejlesztés Mi az operátor mérete? - meghatározás a techopedia alapján

Mi az operátor mérete? - meghatározás a techopedia alapján

Tartalomjegyzék:

Anonim

Meghatározás - Mit jelent a Sizeof Operator?

A operátor mérete a C #-ben egy olyan operátor, amely meghatározza egy nem kezelt típus méretét (bájtban), amely nem referencia típus.

A dinamikus memóriaelosztással járó alkalmazások fejlesztésekor nagyon gyakori a típushoz rendelt memória megtalálása. Nagyon nem biztonságos a típus méretét feltételezni, és a merev kódolt értéket az alkalmazásban használni, mivel ez tönkreteheti az alkalmazást, ha különböző rendszerekre továbbítja. Az operátor méretét ilyen esetekben használják az összetett adattípus méretének, például egy struktúrának a meghatározására. Azonban csak az értéktípusok bájtméretének kiszámításához használható, és a .NET keretrendszer virtualizált típuskiosztó rendszeréből adódóan nem referenciatípusokhoz.

Az operátor mérete segíti az adatszerkezetek memóriaelosztását, amelyek a kezelt alkalmazásból átadódnak a nem kezelt kódokhoz, mint például az Interop, az egyedi sorosítás stb. A mutatókon működő növekvő és csökkentő operátorok a belső operátor méretét belsőleg növelik vagy csökkentik. egy mutatóváltozóban, amelynek értéke megegyezik a mutató típusa által elfoglalt bájtok számával. A sizeof operátor javítja a kód olvashatóságát.

A Techopedia magyarázza a Sizeof operátort

A sizeof operátor egy egységes operátor, amely egyidejű paramétert vesz fel, és a "sizeof" kulcsszóval használja. A C ++-szal ellentétben az operátor méretének fordítási idejű konstrukciója van, tehát a paraméternek a fordítás során ismert zárt típusúnak kell lennie, nem pedig változóinak. A paraméter lehet enum, mutató vagy felhasználó által definiált struktúra, mező vagy referencia típus tulajdonságok nélkül. Bizonyos előre definiált típusoknál az operátor mérete állandó értéket ad vissza, míg a fennmaradó típusokkal történő használata a végrehajtáson alapuló értékeket eredményez.

Például, ha az operátor méretét paraméterként egész számmal (int) hajtják végre, akkor mindig a négyet adja vissza, jelezve, hogy az egész típusú típusú változó négy bájt memóriát foglal el.

Amikor az operátor méretét egy struct típusú operandusra alkalmazzák, akkor lehívja a struct által elfoglalt összes byte-ot, amely magában foglalja a párnázási byte-kat, amelyek a belső igazításhoz használhatók. A sizeof operátor és a struct használata során követendő iránymutatások a következők:
  • Nem biztonságos blokkban kell hívni
  • Az struct változó nem tartalmazhat referencia-típusú tagot
  • Az építmény nem lehet általános értéktípus
Ezt a meghatározást a C # összefüggésben írták
Mi az operátor mérete? - meghatározás a techopedia alapján