Společnost Meta na dvoudenní konferenci Meta Connect 2026 představuje své novinky. Vypíchnout lze lehké brýle s funkci VR Meta VR Glasses. Do prodeje půjdou na jaře 2027 za cenu 1299,99 dolarů.
Google Chrome 154 byl prohlášen za stabilní. Nejnovější stabilní verze 154.0.8037.57 přináší řadu novinek. Podrobný přehled v poznámkách k vydání. Opraveno bylo 108 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.
Vláda sníží v příštím roce výdaje na IT služby státu o 1,4 miliardy korun. Úspory má umožnit lepší koordinace nákupu služeb napříč resorty prostřednictvím nového zmocněnce. Celkové roční výdaje státu na informační technologie a digitalizaci se podle údajů ministerstva průmyslu a obchodu pohybují okolo 20 až 25 miliard korun ročně, pro letošek bylo na 320 projektů vyčleněno 21 miliard.
Irská komise pro ochranu dat (DPC) uložila americké technologické společnosti Google ze skupiny Alphabet pokutu 403 milionů eur (9,8 miliardy Kč) za neoprávněné nakládání s údaji o poloze uživatelů. Firma podle komise porušila evropské nařízení o ochraně osobních údajů (GDPR). DPC uvedla, že při šetření zjistila, že si lidé nemuseli být vědomi skutečnosti, že jejich poloha byla využívána například k ovlivňování prostřednictvím reklam nebo k odvozování jejich zájmů, a mohli tak ztratit kontrolu nad svými osobními údaji.
Byla oznámena beta verze nového video kodeku Pyrowave pro streamování her v Steam Remote Play. S vysokou propustností a nízkou latencí. S podporou HDR a YUV 4:4:4.
Byl vydán Sublime Text 4 Build 4213. Sublime Text (Wikipedie) je proprietární multiplatformní editor textových souborů a zdrojových kódů. Ke stažení a k vyzkoušení je zdarma. Pro další používání je nutná licence v ceně 99 dolarů. Spolu se Sublime Merge je cena 168 dolarů.
Firma Anthropic, tvůrce AI modelu Claude, začala v oblasti Sanfranciského zálivu v tichosti provozovat vlastní biotechnologickou laboratoř. Anthropic prý chce pomocí AI urychlit hledání léků na nemoci, jimž farmaceutický průmysl dle názoru firmy věnuje příliš málo pozornosti. Firma tvrdí, že laboratoř se zatím soustředí především na základní biologii, nikoli přímo na vývoj léčiv. Farmaceutický výzkum je pro generálního ředitele Daria Amodeie velice osobní téma, jeho otec zemřel na hepatitidu C několik málo let před objevením účinné léčby.
Vědci z Googlu dokončili mapu všech neuronových spojení v mozku (tzv. konektom) samečka mušky octomilky obecné (drosophila melanogaster), hlavním cílem je komparativní analýza s již zmapovaným mozkem samičky. S tímto veřejně dostupným modelem, čítajícím přibližně 160 000 neuronů, se začali bavit nadšenci. Mozek mouchy pohání experimentálního kryptoburzovního bota Stonkfly, případně si zahrál počítačové hry Beat Saber, Mario64 a samozřejmě DOOM (gameplay videa). Ani mozek samičky nezůstal stranou, vyzkoušel si Minecraft.
Alibaba Cloud je dalším sponzorem nadace Omacom Foundation stojící za linuxovou distribucí Omarchy. Přislíbená částka je 3 miliony dolarů, tj. 1 milion dolarů ročně po dobu tří let. Stejná částka jako u DigitalOcean.
Byla vydána nová verze 262 správce systému a služeb systemd (Wikipedie, GitHub).
while (int a = getData()) {
// kód
}
for (int a = getData(); a; a = getData()) {
// kód
}
Nicméně tohle už v C++ validní není:
do (int a = getData()) {
// kód
} while ((a = getData()));
Takže nás to nutí psát ošklivé konstrukce jako třeba:
{
int a = getData();
do {
// kód
} while ((a = getData()));
}
Smyslem je pracovat uvnitř cyklu s hodnotou proměnné a, ale podmínku testovat až na jeho konci.
Přitom ale chceme mít rozsah platnosti proměnné omezen na daný cyklus.
Že by po podobné konstrukci C++ byla poptávka, můžeme soudit podle dotazů zde a zde.
Řešením může být tato obskurní knihovna.
A následný kód je najednou validní.
do (int a = getData()) {
// kód
} while ((a = getData()));
Důležité je, že tato knihovna neporuší původní syntaxi klíčového slova do v cyklu do-while.
Ještě dodám, že ty dvojité závorky jsou tam záměrně. Jinak by GCC vypsalo varování:
warning: suggest parentheses around assignment used as truth value [-Wparentheses]Pokud se vám takové konstrukce líbí, tak z tohohle a tohohle budete nadšeni.
Tiskni
Sdílej:
do {
...
} while( getData() );
případně, pokud bych chtěl ten výsledek, tak
int a;
do {
...
} while(( a=getData() ));
a definovaná, ale během první iterace nebude mít definovanou hodnotu!
Nicméně tohle už v C++ validní není:
do {
// kód
} while (int a = getData());
A k čemu je tato konstrukce dobrá? Proměnná "a" vznikne až v podmínce u while na konci bloku, takže se nemůže použít uvnitř, a zanikne při opuštění cyklu.
while (int a = getData()) {
// kód
}
Je moc uzitecna konstrukce, obdobne jako:
if (int a = getData()) {
...
}
A za tohle bych programatora zabil:
switch (int a = getData()) do default: {
// kód
} while ((a = getData()));
Blog prispevek naprosto onicem. C++ ma milion dalsich vlastnosti, ktere by si zaslouzili hate, ale tohle zrovna ne.
Nicméně tohle už v C++ validní není:
do (int a = getData()) {
// kód
} while ((a = getData()));
Jen pro info. Toto se také nepřeloží :D.
#include <iostream>
#include <functional>
int glob = 10;
template <typename TData>
void do_loop(const std::function<TData ()> &getter, const std::function<void (TData&)> &worker)
{
TData data = getter();
do {
worker(data);
} while ((data = getter()));
}
int main()
{
int i = 65;
do_loop<int>([&]() { return glob--;}, [&](int &d){ std::cout << i + d << "\n"; });
return 0;
}
Jinak ten zápis s dvojím voláním getData() mi přijde úplně normální...
Obskurní konstrukce? To by se to taky mohlo napsat takto:
Jinak ten zápis s dvojím voláním getData() mi přijde úplně normální...
Myslím tu třetí možnost s do-while zabaleným scopu.