Obsah:
Definice - Co znamená operátor Decrement?
Operátor dekrementace v kontextu C # je unární operátor. Vrací hodnotu stejného typu s předdefinovanou hodnotou rovnou hodnotě operandu minus jedna. Operátor dekrementu je označen symbolem '-'.
Operátor dekrementace podporuje notace předpony i postfixy. V případě zápisu prefixu (označeného - x, kde x je proměnná) se hodnota proměnné použije ve výrazu po snížení její původní hodnoty. Při použití postfixové notace (x--) bude ve výrazu zohledněna hodnota proměnné před operací dekrementace. Operátor dekrementu lze použít ke změně umístění ukazatele odečtením hodnoty rovné velikosti (nebo typu ukazatele) od adresy obsažené v proměnné ukazatele.
Techopedia vysvětluje Decrement Operator
Operátor dekrementace se obvykle používá v příkazech iterace smyčky nebo v jakémkoli kontextu, kde je potřeba dekrementovat jednou jednotkou. Mezi vlastnosti operátoru snižování patří:
- Hodnota vrácená operátorem dekrementace je uložena v umístění směřujícím k proměnné.
- Hodnota vrácená operátorem se stává výsledkem operace snižování.
- Typy, které mají předdefinovanou implementaci operátoru snižování, jsou numerické typy, jako je celé číslo, sbyte, krátké, int, dlouhé, char, float, double, decimální a výčet.
- Uživatelem definované typy mohou přetížení operátoru dekrementace implementovat potřebnou sémantiku.
- Při použití operátoru dekrementace na ukazatel závisí výsledek na implementaci. Výjimky nejsou vyvolány, pokud operace přeteče doménu ukazatele.
- Přednost operátoru snižování umožňuje, aby notace postfixu měla vyšší prioritu než forma předpony.
Pamatujte, že při použití operátoru snižování musí být operand výraz představující proměnnou, přístup k vlastnosti nebo indexy. Navíc, pokud se operátor dekrementu používá s notací předpony pro operand, vlastnost nebo indexátor musí mít přístupový a get access set, aby nedošlo k chybám kompilace. Dále, pokud se pro ukazatel použije operátor snižování, ukazatel může být jakéhokoli typu kromě neplatného *.
Operátor dekrementu by měl být použit k nastavení proměnné a ne k hodnotě. Použití operátoru dekrementace vícekrát v jediném výrazu může způsobit nepředvídatelné výsledky hlavně kvůli optimalizaci aplikované kompilátorem. Z tohoto důvodu se doporučuje použít operátor dekrementu po pochopení pořadí vyhodnocení, přičemž se použije notace postfix i předpona spolu s její prioritou v sadě operátorů C #. Notifikace postfixu a prefixu operátora dekrementace nemohou mít implementaci samostatného operátora.