Diskuze: Logické operátory - XOR

Tvůrce

Zobrazeno 36 zpráv z 36.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
XOR = exkluzivní OR, nebo také non-ekvivalence:
A XOR B je to samé jako NOT (A <=> B)
XOR je operátor, který by se měl používat co nejméně a hlavně až po zralé úvaze. Jeho použití v programování není sice tak rizikové jako v elektronice, ale i tak je většinou lepší se mu vyhnout.
Zatím jsem ho nepoužil nikdy, spíš jsem to našel na msdn a zajímalo mě
jak funguje
Na MSDN jsem už našel spoustu kravin, např. "goto".
Uvědom si, že MSDN není manuál, ale referenční příručka. Musí v ní být i konstrukce, které se sice nemají používat, ale jsou součástí jazyka.
Nevidím důvod se XORu vyhýbat.
Logický XOR sice nepoužívám, protože se dá vše zapsat bez něj, ale
binární xor se občas docela hodí
Nevzpomínám si, kdy jsem naposledy XOR potřeboval. Možná když jsem chtěl invertovat maskou nějakou logickou hodnotu. Takové operace se většinou skrývají uvnitř GUI a není potřebné s nimi přímo manipulovat.
Proč by do jazyka dávali něco, co se nemá používat?
Protože ho používat lze. Svoboda kódování.
To že existuje tě nenutí ho použít, ale když chceš, tak i můžeš.
Aby si naivky myslely, že to musí používat. Taková lehká forma sadismu.
Že ty si myslíš, že se něco nemá používat, ještě neznamená, že se
to nemá používat
On xor prolezl do všech jazyků z JSA, kde to smysl dávalo.
edit: myslím v tom low level programování to mělo smysl
Nemá neznamená nesmí.
Existuje strašná spousta věcí, které se nemají.
Už jsi šel někdy přes trávu? A víš že existuje chodník?
A že se silnice 'má' přecházet jen po zebře?
Kdyby všichni dělali jen co mají, byli bychom stroje.
Reagoval jsem tím hlavně na Kitův názor na goto - že se nemá používat.
Je to jeho názor, ale prezentuje ho tu jako by to byl obecně uznávaný fakt, což není.
Mám dojem, že má na mysli používání goto například v C#. Třeba v
ASM by to šlo asi těžko jinak
Ano, to souhlasí, já také neměl na mysli asm
Má goto třeba v již zmiňovaném C# nějaké vhodné využití?
Problém s goto byl ten, že se dříve používalo nadměrně a znepřehleňovalo to kód.
Ale stejně tak někteří začátečníci nadužívají třeba podmínky...
Když se goto použije opravdu na vhodném místě, tak to dokonce kód může být přehlednější a rychlejší - třeba pro vyskočení z vnořených smyček.
Jsem rád za názor z druhýho břehu, jak učitel tak kit by za goto
vraždili, pak nemá mít člověk dojem že se to nesmí/nemá používat
Z vnořeného cyklus vyskočím buď správně nastavenou podmínkou nebo ho vložím do metody a v místě, kde potřebuju vyskočit vrátím chybnou hodnotu... goto osobně nepoužívám
Miesto pozitia navestia a goto radsej vytvoris pomocnu premennu(ktora sa musi testovat v kazdom cykle) alebo este lepsie spravys dalsiu funkciu a budes testovat navratovu hodnotu...
Takové goto je totiž zpravidla úplně zbytečné. Obvykle je jen ukázkou toho, že programátor neumí používat vhodnější způsoby strukturování kódu.
Přijde mi to zvláštní ale jako výmluvu to beru
// občas mi totiž není vůbec jasný o čem se vy dva hádáte, konečně
jednou vím
Aspoň si vymysli nějaké jméno.
Jdeš na to chybně. Přemýšlíš nad otázkou: "jak mám nahradit goto?" a to je špatně.
Luboš Běhounek Satik totiž hájí své pozice, kterými jsem si kdysi prošel a které jsem před několika lety opustil.
Ja nechcem nahradit goto. Goto nema nahradu
Vyskocit z vnoreneho cyklu sa da najlepsie pomocou goto. Je to prehladnejsie a
rychlejsie ako pouzivat docasne premenne.
Je to preto lebo c# neumoznuje pomenovat cyklus a pouzit nieco taketo:
for:name(...){
while(...){
break name;
}
}
Z cyklu se dá vyskočit i returnem, což by v daném případě bylo asi nejvhodnější.
O dočasných proměnných nebyla řeč. Často jsou zbytečné.
Občas mi to také není jasné, třeba asi před půl rokem jsme se hádali
o použití klíčového slova var ( http://www.itnetwork.cz/…10d0b7e1f78e )
a Kit až před měsícem zjistil, k čemu slouží
mě se vaše hádky líbí, sice mám vždycky pocit že ke konci diskusi
převzali mimozemšťani, ale většinou si i něco odnesu
Většinou si odneseš plno argumentů pro a proti, ale žádnou výslednou
odpověď
Však to tak má být. Ať každý hezky přemýšlí sám za sebe. Tady nejsme na základní škole.
Zobrazeno 36 zpráv z 36.