Jak přesně funguje inline? – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Jak přesně funguje inline? – C / C++ – Fórum – Programujte.comJak přesně funguje inline? – C / C++ – Fórum – Programujte.com

 

oxidián0
Grafoman
25. 6. 2016   #1
-
0
-

 Situace A)

inline void funkce(){

int max = 10;

for (int i=0; i<max; i++)


std::cout << i << ","


}

 Situace B)

inline void funkce(){

int max = 100;

int A = 1;
int B = 2;
step=2;

for (int i=0; i<max; )
{
if (A==1)
   i++;
if (B==2)
   i=step;
std::cout << i << ",";
... // do something
}
}

Zajímalo by mě jestli se ve scénáří A po přeložení kompilátorem pracuje s navyšováním proměnné nebo to ten kompilátor dosadí jako konstantu. Mohl by přece usoudit, že když se i nikde dále podmíněně nemění (není závislost mezi i a zbytkem inline funkce) tak může kód přeložit takto:
 

std::cout << "0,1,2,3,4,5,6,7,8,9,";


neboli místo proměnné dosadit si hodnotu.

U situace B by mě tedy zajímalo, jestli to zvládne i v případě, že se i může navyšovat dvěma způsoby. Dejmetomu, že ty vzniklé situace jsou jen tři, dokázal by to interpretovat třeba takto?

std::cout << "0,1,2,3,4,6,8";


V závislosti na zbytku kódu? Nebo jakmile jsou tam závislosti, tak to kompilátor nedokáže rozebrat a dosadit konstanty za proměnné? Nebo je to až do určité úrovně složitosti apod.?

Ještě přidám jeden dotaz - je známo že do smyček není dobré dávat další smyčky. Bude kód rychlejší, když místo vnořené smyčky dám inline funkci, v případě, že znám přesnou šířku obrazu? Např. při procházení obrazu procházím nejdříve řádky a pak sloupce. A vím že obraz má 256x256 px. Tedy bych mohl udělat inline funkci s for, a ten kompilátor to vyhodnotí tak, že to provede jako 256 samostatných příkazů, jo?

A dále - co podmínky uvnitř cyklu. Nedávat? Podmínky by ten kód mohly prodloužit. A mě napadlo, že některé podmínky se dají dát mimo cyklus, jestliže znám přesnou šířku obrazu. Cyklus bez podmínek by pro kompilátor a inline funkci snad nebyl problém.

Příklad takové funkce:

for (int r = 0; r < gaps.rows; r++)
	dst.row(r*gap).copyTo(gaps.row(r));
if ( remains >= 0 )
	dst.row(dst.rows-1).copyTo(gaps.row(gaps.rows-1));

akorád, že toto je zrovna ten případ, kdy kompilátor by nemohl vědět, kolik je rows, ale kdybych tam dal konstantu 256, tak už by to mělo jít efektivně přeložit jako serie příkazů.

No a teď si vemte, že bych měl ještě to samé provést na sloupce.

Takže musím procházet řádky a pak sloupce vnořeným cyklem... Tomu bych mohl předejít tím, že přehodím sloupce s řádkami, ale nevím jestli by se to pak vyplatilo. Vzhledem k tomu, že chci obraz pak pixel po pixelu analyzovat (v několika směrech) tak asi jo. Protože bych se vyhnul vnořeným cyklům. Teď narážím na analýzu že kolem pixelu x,y detekuju barvu pixel nad, pod, vlevo a vpravo, nebo pouze vlevo a pouze vpravo; nebo pouze dole a pouze nahoře... takže uvažuju o možnosti jestli se vyplatí vyhnout se vnořeným smyčkám. Vím že smyčka je struktura, ale nefunguje to podobně jako funkce? Sice nepoužívá stack, ale proč by se jinak programátoři snažily vyhnout hloubkovým cyklům při procházení obrazu? Snad kvůli času zápisu do paměti když provádím i++; (první smyčka) r++; (vnořená smyčka)

Nahlásit jako SPAM
IP: 78.45.87.–
KIIV
~ Moderátor
+43
God of flame
25. 6. 2016   #2
-
0
-

Na to bys musel pouzit spis sablony nebo constexpr, nicmene ani jedno neni ve tvem prekladaci moc pouzitelne.

Inline je jinak jen doporuceni, ze tenhle kus kodu by se nemusel volat jako funkce, ale hazet rovnou na misto sveho volani

Nahlásit jako SPAM
IP: 93.91.152.–
Program vždy dělá to co naprogramujete, ne to co chcete...
vitamin+8
Grafoman
25. 6. 2016   #3
-
+1
-
Zajímavé
BDS +
Nahlásit jako SPAM
IP: 78.141.123.–
obfuscate: "The cruel god Malloc will strike you down. "
ZMeson: "That's the C god. C++ has a new god. "
KIIV
~ Moderátor
+43
God of flame
25. 6. 2016   #4
-
+1
-
Zajímavé
BDS +

#3 vitamin
jen k tomu tvemu doplnim jeden bod extra pro nej:

4) naucit se pouzivat google :) - Na vetsinu z toho je na netu uz milion a pul odpovedi.

Nahlásit jako SPAM
IP: 93.91.152.–
Program vždy dělá to co naprogramujete, ne to co chcete...
oxidián0
Grafoman
25. 6. 2016   #5
-
0
-

#3 vitamin
VS2016 mi na Windows XP nepojede :-D

Nahlásit jako SPAM
IP: 78.45.87.–
vitamin+8
Grafoman
25. 6. 2016   #6
-
0
-

#5 oxidián
Tak si zmen/aktualizuj/virtualizuj operačný systém...

Nahlásit jako SPAM
IP: 78.141.123.–
obfuscate: "The cruel god Malloc will strike you down. "
ZMeson: "That's the C god. C++ has a new god. "
oxidián0
Grafoman
25. 6. 2016   #7
-
0
-

#6 vitamin
Na to je ještě čas.

Nahlásit jako SPAM
IP: 78.45.87.–
KIIV
~ Moderátor
+43
God of flame
25. 6. 2016   #8
-
0
-

To je holt tvuj boj... Ty se ucis historii programovani v C++ a jeste na ne zrovna moc funkcnim kompilatoru :D

-----

Neco jako uci ucitele na skolach treba fyziku a tak.. Uci se veci jako ropa vznikla ze zivocichu (pravdepodobne geologicky proces), spenat ma 10x vic zeleza (chyba v desetinne carce, o ktere se vi uz pres sto let, ale furt ta kravina koluje) ...

Nahlásit jako SPAM
IP: 93.91.152.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Kit+15
Guru
25. 6. 2016   #9
-
+1
-
Zajímavé
BDS +

#8 KIIV
Spíš bych viděl budoucnost ve výměně C++ za nějaký jiný jazyk, který mu bude lépe vyhovovat.

Nahlásit jako SPAM
IP: 194.228.68.–
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
KIIV
~ Moderátor
+43
God of flame
25. 6. 2016   #10
-
+1
-
Zajímavé
Kit +

Tezko odhadovat, co by mu mohlo vyhovovat, neco scriptovaciho mozna...

Nahlásit jako SPAM
IP: 93.91.152.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Kit+15
Guru
25. 6. 2016   #11
-
0
-

#10 KIIV
To záleží na tom, co se snaží dělat - z těch otázek mi to stále není jasné. Jazyk C++ je prezentován jako univerzální, což v mnoha situacích není právě nejvýhodnější, protože to prodlužuje dobu vývoje.

Skriptovací jazyky jsou úplně jinou kategorií. Například v Pythonu jsem si napsal vlastní internetový browser a nebylo to nic obtížného. V C++ bych to psal mnohem déle.

I poměrně neznámá Lua dává docela dobré výsledky, zejména v animacích mnoha různých objektů, což je užitečné u her typu WoW.

Jazyků je hodně, ale ne každý je vhodný na všechno. Kladivo také není univerzálním nářadím.

Nahlásit jako SPAM
IP: 194.228.68.–
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
KIIV
~ Moderátor
+43
God of flame
25. 6. 2016   #12
-
0
-

#11 Kit
S tim se da souhlasit.

Obecne c++ vyvoj znamena, ze to muze trvat dele naprogramovat, ale zase to muze dosahovat vyrazne lepsich vysledku nez jazyky interpretovane ci kompilovane do nejakeho pseudokodu (ale nemusi to byt pravidlem - pokud delaji benchmarky treba java programatori, tak zpravidla v c++ vznikne tak priserne neefektivni kod, ze nema oproti jave zadnou sanci)

Proste zalezi na tom, co se od toho ocekava. Meli jsme treba podobne aplikace puvodne v c++, novejsi vylepsenou v jave, a v c++ zvladalo mnohonasobek transakci nez v jave (a to bylo na nejakejch slabejch HPUX, oproti jave na silnejch bladech s hromadou ram)

Nahlásit jako SPAM
IP: 93.91.152.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Kit+15
Guru
25. 6. 2016   #13
-
0
-

#12 KIIV
To souhlasí. Na druhou stranu není zase mnoho aplikací, které z toho železa potřebují vyždímat maximum. Když jsem potřeboval vynásobit matice 2000×2000, tak jsem si také na to nevzal C++, ale něc lepšího.

Je stále hodně úloh, kde se na výkon moc nehledí. Typicky GUI. Většinu času čeká na akci uživatele a nějaká optimalizace je v něm zpravidla zbytečná.

Nahlásit jako SPAM
IP: 194.228.68.–
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
KIIV
~ Moderátor
+43
God of flame
25. 6. 2016   #14
-
0
-

#13 Kit
trosku zabihame do silneho OT :D

Kazdopadne nasobeni matic by byla zajimava uloha pro GPU :))

Kazdopadne to jsou malinky matice, to se da vynasobit i scriptem a nebude to trvat celou vecnost

Nahlásit jako SPAM
IP: 93.91.152.–
Program vždy dělá to co naprogramujete, ne to co chcete...
ondrej39+1
Věrný člen
25. 6. 2016   #15
-
0
-

#13 Kit
C++ je zrovna velmi dobrý jazyk na násobení matic, když člověk ví, co dělá. Pokud převedeš zátěž na GPU, poskládáš matici tak, aby se dala líp cachovat urychlíš maticové operace. Pak když ještě nepoužiješ standardní O(n^3) algoritmus ale něco z BLAS, tak jenom na matici kde n je 3000 máš rozdíl již třeba 100x tolik instrukcí (27 miliard oproti 221 milionům).

Nahlásit jako SPAM
IP: 46.39.172.–
Inject all the dependencies!
Kit+15
Guru
25. 6. 2016   #16
-
0
-

#15 ondrej39
Nemyslím si to. Na násobení matic je například Fortran výkonnější a programování takové aplikace je pohodlnější.

Jistě, s GPU je to úplně jiná liga.

Nahlásit jako SPAM
IP: 2a00:1028:83a0:37a6:8544:...–
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
ondrej39+1
Věrný člen
25. 6. 2016   #17
-
0
-

#16 Kit
Fortran je (možná - pro člověka, co celý život dělal v C++ určitě bude pohodlnější to napsat prostě v C++ a neučit se jiný jazyk a jeho úskalí) pohodlnější k naprogramování výkonnější aplikace, ale nevěřím, že je výkonnější jako takový, to se odvíjí opět od algoritmu a ne od jazyka samotného.

Nahlásit jako SPAM
IP: 46.39.172.–
Inject all the dependencies!
KIIV
~ Moderátor
+43
God of flame
25. 6. 2016   #18
-
0
-

Jen jsem si to tak otestoval, libka armadillo, vygenerovani dvou matic 2000x2000, vynasobeni..  Asi 5 minut prace a 7.4 sekundy vypocet (na virtualu)

Nahlásit jako SPAM
IP: 93.91.152.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Kit+15
Guru
25. 6. 2016   #19
-
0
-

#17 ondrej39
Ve Fortranu jsou ty algoritmy o dost jednodušší, protože například odpadají řídicí proměnné některých cyklů, výběr řádku či sloupce z tabulky je jen pouhé přiřazení, dvě pole můžeš prostě sečíst nebo celé pole vynásobit hodnotou, má nativní podporu komplexních čísel apod.

Tohle při vývoji operačních systémů nebylo potřebné, proto se to do C/C++ nedostalo.

Nahlásit jako SPAM
IP: 194.228.68.–
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
oxidián0
Grafoman
26. 6. 2016   #20
-
0
-

"Spíš bych viděl budoucnost ve výměně C++ za nějaký jiný jazyk, který mu bude lépe vyhovovat."

Hahaha to mi už říkalo hodně lidí a pokaždé to bylo u jiného jazyka. Jenže mě to baví jinak bych se v tom nehrabal. Navíc když se do něčeho zakousnu tak nepustím.

Nahlásit jako SPAM
IP: 78.45.87.–
oxidián0
Grafoman
26. 6. 2016   #21
-
0
-

Vaše zmatení je na místě a je cílené. Nechci prozrazovat svoje záměry. C++ je pomalé? Jako na zpracování obrázků? Jako že by sis vzal na pomoc nějaké API které pracuje s grafikou? Jestli si to tak myslel, tak to zase záleží na grafice. Já třeba nechci dávat 7-10 tisíc za silnou grafiku, bylo by to na nic, protože chci dělat aplikaci, kterou budou moci používat i další lidi ne jen já. Zdá se mi že CPU jsou levnější a dostupnější a ne každý má doma namakanou GPU. Ale KIT si asi myslel spíš programovací jazyk a já si teda neumím představit co by mohlo být rychlejšího než C++.

Nahlásit jako SPAM
IP: 78.45.87.–
Kit+15
Guru
26. 6. 2016   #22
-
0
-

#21 oxidián
Právě ten Fortran je o něco rychlejší než C++. Proto také C++ používá hodně knihoven napsaných ve Fortranu. Tím se zlepšila i efektivita aplikací v C++, které tyto knihovny využívají.

Fortran je určen na drcení čísel a je v této oblasti velmi efektivní jak na straně programátora (hromada syntaktického cukru), tak i na straně stroje (paralelní zpracování, cykly převedené na blokové přesuny,..)

C++ je naopak vhodnější na tvorbu operačních systémů, protože tam se pracuje hlavně s celými čísly, řetězci, správou paměti, ukazateli a dalšími záležitostmi, které jsou pro vědce nezajímavé.

Nahlásit jako SPAM
IP: 194.228.68.–
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
BDS+3
Věrný člen
26. 6. 2016   #23
-
+1
-
Zajímavé
Kit +

#21 oxidián
co by mohlo být rychlejšího než C++

To, že napíšeš nějakou aplikaci v C++ nemusí automaticky znamenat, že bude rychlejší, něž ta stejná aplikace napsaná někým jiným v jiném jazyce. Prostě, aby byla rychlejší (výkonnější), záleží na tom z velké části jak je psaná.

Navíc, podle kousků kódu co tady dáváš, si myslím, že vliv C++ se ve Tvých aplikacích nijak zvlášť neprojeví.

Tím Tě nechci od C++ nějak odrazovat, jen vidím, že se pořád dost ztrácíš v základech. Tak mi přijde, že jazyk s automatickou správou paměti, by byl pro Tebe snazší.

Nahlásit jako SPAM
IP: 185.69.69.–
W11 :)
oxidián0
Grafoman
26. 6. 2016   #24
-
0
-

#23 BDS
No však jako já jsem taky začátečník, snad si nemyslíš že si o sobě myslím že jsem pokročilý? Automatickou správu paměti má OpenCV taky takže o paměť se starat zatím nemusím. Rychlost si bere nastarost knihovna, kterou jsem zkompiloval. Jistě, ve starém kompilátoru, ale to mohu časem napravit. Zatím se jen učím základy, ale OpenCV se dá používat i s tím málo co umím.

Nahlásit jako SPAM
IP: 78.45.87.–
BDS+3
Věrný člen
26. 6. 2016   #25
-
+1
-
Zajímavé
Kit +

#24 oxidián
Já jsem přece nepsal, že si myslím, že jsi pokročilý (na takové hodnocení neexistuje metr a ani to není důležité). Pouze, že nemáš nastudované základy, obvykle tady totiž řešíš takovéto problémy. A domnívám se, že zvládnutí základů je klíčovým bodem dalšího postupu. Protože se už programováním v C++ zabýváš docela dlouho a pořád děláš chyby v základech, tak mi přijde, že Ti to zrovna do hlavy asi moc neleze. Tak jsem Ti tu taky pouze doporučil zkusit jiný jazyk.

Pokud, ale chceš opravdu zůstat u C++ (je to skvělý a poměrně univerzální  jazyk, který je ale taky nutno správně ovládat, aby byl využit jeho potenciál) tak zůstaň, ale určitě změň kompilátor, protože hodně věcí, na které se tu ptáš, by Ti dobrý kompilátor "vysvětlil". Snažit se psát v a pro XP, i přesto, že XP je legenda, je s vyvíjejícím se HW tak trochu zbytečné (pokud nepíšeš software pro nějaký CNC stroj s XP, nebo něco podobného - což by nebyl důvod psát v, ale pro XP).
Mimochodem, co používáš za kompilátor?

Nahlásit jako SPAM
IP: 185.69.69.–
W11 :)
oxidián0
Grafoman
26. 6. 2016   #26
-
0
-

Já se nezabývám programováním dlouho a i kdyby jo, tak to je věc každého jednotlivce jak dlouho se učí a jak mu jde učení. To že se učím dlouho se ti jen zdá. Protože to že jsem ze začátku k tomu na vhcíli sedl a zkusil napsat program v C neznamená, že jsem se to naučil. Jen jsem se s tím seznamoval a to bylo opravdu jen chvíli. Asi dva měsíce jsem se seznamoval jak vůbec funguje Visual Studio a jak zkompilovat program. Další rok zase asi dva měsíce jsem zkoušel jiné IDE a Cčko takže zase jiný program. A za tři roky nebo jak to bylo dlouho jsem zapoměl co jsem se naučil protože jsem před tím naprogramoval velké prd. Jestli si tedy myslíš že se to učím tři roky v kuse tak to si naomylu. A právě, že se to lehce zapomene. Naštěstí mám poznámky co znamenaj jednotlivé chyby ve VS takže nejsem tak úplně ztracený jak to tady vypadá. Vždycky používám poznámky až na to, že některé situace v těch mých poznámkách ještě nebyly. Další věc je že někomu svědčí vzít si nejdříve knihu a vše si pročíst, jenže tohle u mě neplatí protože si to nedokážu zapamatovat. Co přečtu to zapomenu. U mě platí jedině sednout k PC a zkoušet to naživo. A to že dělám chyby mi vůbec nevadí protože moje životní motto je že chybami se člověk učí. Používám VS 2010.

Nahlásit jako SPAM
IP: 78.45.87.–
BDS+3
Věrný člen
26. 6. 2016   #27
-
0
-

#26 oxidián

Ono je celkem jedno jak dlouho, podstatné je, že neovládáš věci, které patří do prvních lekcí (reference, sprintf ..). 

VS 2010 - tuhle verzi jsem sice prakticky přeskočil, ale to se mi skoro ani nechce věřit, protože některé věci co jsi tu dával, by měl i VS2010 kompilátor zachytit (pokud je nemáš vyřazeny ze seznamu chyb a varování).

Každopádně, pokud chceš zůstat u Windows tak VS2013 a pak 2015, je oproti starým verzím ve vyhodnocení kódu a intellisense velký pokrok, je ale potřeba mít min. W7. Ovšem pochopení programovacího jazyka zůstává samozřejmě tím nejdůležitějším.

Pouze jsme se snažili Ti dobře poradit, ne Tě sekýrovat. Je jen na Tobě co si s toho vezmeš.

Nahlásit jako SPAM
IP: 185.69.69.–
W11 :)
Kit+15
Guru
26. 6. 2016   #28
-
0
-

#26 oxidián
Tímhle tempem z tebe asi tak za dva roky bude začátečník v C++.

S novějšími jazyky, např. s C# nebo Javou bys dělal pokroky mnohem rychleji, protože už mají automatizovánu správu paměti, s řetězci se pracuje stejně přirozeně jako s čísly a spoustu dalšího syntaktického cukru.

Předpokládám, že programuješ spíš pro zábavu. Co takhle vyzkoušet i jazyky z jiného soudku? Smalltalk, Scheme, Haskell, OCaml nebo Prolog? I když v nich nebudeš programovat, zlepšíš si rozhled. Možná si z nich odneseš zajímavé návyky a vrátíš se s nimi k C++.

Nahlásit jako SPAM
IP: 194.228.68.–
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
vitamin+8
Grafoman
26. 6. 2016   #29
-
0
-

#26 oxidián
Problém môže byť v tom že sa učíš pomalšie ako sa vyvýja samotné c++ takže sa ten jazyk asi nikdy nenaučíš :)

Nahlásit jako SPAM
IP: 78.141.123.–
obfuscate: "The cruel god Malloc will strike you down. "
ZMeson: "That's the C god. C++ has a new god. "
BDS+3
Věrný člen
26. 6. 2016   #30
-
0
-

#28 Kit
spíš bych doporučil C#, protože je to jazyk C++ blízký a najde na netu dost materiálu.

Nahlásit jako SPAM
IP: 185.69.69.–
W11 :)
Kit+15
Guru
26. 6. 2016   #31
-
0
-

#30 BDS
Totéž se dá tvrdit i o Javě, kterou preferuji před C#. Je fakt, že do Javy spousta vlastností z C++ nebyla převzata v zájmu čistoty jazyka.

Nahlásit jako SPAM
IP: 194.228.68.–
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
oxidián0
Grafoman
26. 6. 2016   #32
-
0
-

#28 Kit
Obávám se že na to je můj život moc krátký. Už jsem jednou začal s C/C++ tak to dokončím. Člověk nemůže umět všechno. A co ten Fortran ty ho jako ovládáš? OpenCV není napsané ve Fortranu takže bych ho nevyužil, OpenCV podporuje Perl, C a myslím že i C#.

Nahlásit jako SPAM
IP: 78.45.87.–
Kit+15
Guru
26. 6. 2016   #33
-
0
-

#32 oxidián
Občas si ve Fortranu něco napíši. Většinou to jsou nějaké simulace fyzikálních dějů, u kterých je ten výkon znát. Možná jsi už někde slyšel, že For-Tran je zkratkou z Formula Translation. Je to tedy určeno převážně k řešení úloh z diskrétní matematiky. Zpracování obrazu nebo zvuku do toho spadá také.

Manuály a návody k Fortranu jsou však vzácnější, protože ten jazyk už vyšel z módy. Stále se používá, uživatelé však nebývají programátoři, ale lidé, kteří potřebují zpracovat nějaká naměřená data. Programy tedy dělají spíše pro vlastní potřebu.

Nahlásit jako SPAM
IP: 194.228.68.–
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
oxidián0
Grafoman
26. 6. 2016   #34
-
0
-

#33 Kit
To ses učil ve škole? Na výšce nebo kde?

Nahlásit jako SPAM
IP: 78.45.87.–
Kit+15
Guru
27. 6. 2016   #35
-
0
-

#34 oxidián
Ve škole. Byla v něm napsána jedna hra, od které mám i zdrojáky. Také jsem předělával nějaké knihovny. Byl to docela zajímavý studijní materiál. Většinou v něm však programuji jen pro sebe. Přeložené programy jsou malé a rychlé.

Nahlásit jako SPAM
IP: 194.228.68.–
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
oxidián0
Grafoman
27. 6. 2016   #36
-
0
-

A učil ses to jak dlouho na té škole?

Nahlásit jako SPAM
IP: 78.45.87.–
Kit+15
Guru
27. 6. 2016   #37
-
0
-

#36 oxidián
Už ani nevím. Možná dva nebo tři dny, než jsem si napsal nějaký svůj fungující program, který nebyl podle učebnice.

Nahlásit jako SPAM
IP: 194.228.68.–
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 8 hostů

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý