Byla vydána (𝕏) nová verze 24.7 open source firewallové a routovací platformy OPNsense (Wikipedie). Jedná se o fork pfSense postavený na FreeBSD. Kódový název OPNsense 24.7 je Thriving Tiger. Přehled novinek v příspěvku na fóru.
Binarly REsearch upozorňuje na bezpečnostní problém PKFail (YouTube) v ekosystému UEFI. Stovky modelů zařízení používají pro Secure Boot testovací Platform Key vygenerovaný American Megatrends International (AMI) a jeho privátní část byla při úniku dat prozrazena. Do milionů zařízení (seznam v pdf) po celém světě tak útočníci mohou do Secure Bootu vložit podepsaný malware. Otestovat firmware si lze na stránce pk.fail. Ukázka PoC na Linuxu na Windows na YouTube.
Mobilní operační systém /e/OS (Wikipedie) založený na Androidu / LineageOS, ale bez aplikací a služeb od Googlu, byl vydán ve verzi 2.2 (Mastodon, 𝕏). Přehled novinek na GitLabu. Vypíchnuta je rodičovská kontrola.
Společnost OpenAI představila vyhledávač SearchGPT propojující OpenAI modely umělé inteligence a informace z webů v reálném čase. Zatím jako prototyp pro vybrané uživatele. Zapsat se lze do pořadníku čekatelů.
Distribuce Linux Mint 22 „Wilma“ byla vydána. Je založená na Ubuntu 24.04 LTS, ale s desktopovým prostředím Cinnamon (aktuálně verze 6.2), příp. MATE nebo Xfce, balíkem aplikací XApp, integrací balíčků Flatpak a dalšími změnami. Více v přehledu novinek a poznámkách k vydání.
Příspěvek na blogu Truffle Security: Kdokoli může přistupovat ke smazaným a privátním repozitářům na GitHubu.
Byla vydána nová verze 14 integrovaného vývojového prostředí (IDE) Qt Creator. Podrobný přehled novinek v cgitu. Vypíchnout lze podporu rozšíření v Lua.
Byla vydána verze 1.80.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.
Apple oznámil, že v beta verzi spustil své Apple Maps na webu. Podporován je také webový prohlížeč Chrome. Ne však na Linuxu.
Portál Stack Overflow po roce opět vyzpovídal své uživatele, jedná se především o vývojáře softwaru, a zveřejnil detailní výsledky průzkumu. Průzkumu se letos zúčastnilo více než 65 tisíc vývojářů. Z Česka jich bylo 710. Ze Slovenska 246.
class MojeT { public: Citac():hodnota(1) {} operator int() { return (int(hodnota)); private: int hodnota; }; int main() { MojeT m1; int a=m1; // toto provest lze MojeT m2=a; // toto provest nelze; return 0; }Přiřazení směrem int = Moje_Trida je možné provést ale opačným směrem mi to kompilátor nedovolí. Mohli byste mi říct, jak to přetízit, aby bylo možné přiřadit MojeTrida = int. Díky
MojeT():hodnota(1) {}.. to teď píšu uplně všude, to mám z té učebnice :)
int a = m1;
se pouzije kopirovaci konstruktor pro typ int
s parametrem int
. Pri tom se provede implicitni konverze toho objektu MojeT
na int
za pouziti toho pretizeneho operatoru pretypovani.
V dalsim radku se nepouziva pretizitelny operator =
ale konstruktor s parametrem int
. Operator by se pouzil pri MojeT m2; m2 = a;
nebo m2 = 5;
Mozna je mozne dodefinovat (pres nejakou friend funkci?) konverzi z int
na MojeT
. V tom pripade by tato konverze probehla a pak by se pouzil kopirovaci konstruktor MojeT
s parametrem MojeT
, ktery je implicitne definovan jako bitova kopie objektu (lze samozrejme predelat, viz kapitola copy constructory).
Ale nevim, jak by mel pochopit kompilator, ze ma automagicky vytvorit pretypovani z int
na MojeT
jen na zaklade toho ze zna konverzi opacnou, to mi prijde jako nesmysl. Konverze v obou smerech prece muze vypadat uplne jinak, viz treba float
na int
.
Je mozne ze se nekde mylim, uz si to 100% nepamatuju. Zejmena v tak prasackem jazyce jako je C++ je tohle pomerne slozite. ;)
Tiskni
Sdílej: