C++ Bc. 18: Porovnání verzí
mBez shrnutí editace |
iteratorem ... ma byt manipulatorem |
||
Řádek 18: | Řádek 18: | ||
funkci bychom mohli definovat s typem <tt>void</tt>. Je-li ale | funkci bychom mohli definovat s typem <tt>void</tt>. Je-li ale | ||
funkce definována s návratovým typem reference na standardní vstupní proud, je formálně | funkce definována s návratovým typem reference na standardní vstupní proud, je formálně manipulatorem a můžeme ji používat ve výrazech jako například | ||
while (data >> komentar >> x >> komentar >> y) { /* ... */ } | while (data >> komentar >> x >> komentar >> y) { /* ... */ } | ||
[ [[C plus plus Bc. | Zpět]] | [[C plus plus Bc. 18 cpp | C++]] ] | [ [[C plus plus Bc. | Zpět]] | [[C plus plus Bc. 18 cpp | C++]] ] |
Verze z 9. 5. 2006, 10:36
Napište funkci komentar(), která čte vstupní proud a přeskočí v něm všechny komentáře /* ... */.
std::istream& komentar(std::istream& inp);
Demonstrujte správnou činnost funkce v testovacím programu, který čte dvojice souřadnic x a y a počítá jejich těžiště.
Příklad
/* vstup obsahuje souradnice x a y */ /* x */ 123.54 /* y */ 345.53 738.34 542.43 433.22 543.98 832.64 343.25 534.17 541.23 892.83 336.34 /* konec dat */
Těžiště je (532.382, 463.284).
Poznámka
funkci bychom mohli definovat s typem void. Je-li ale funkce definována s návratovým typem reference na standardní vstupní proud, je formálně manipulatorem a můžeme ji používat ve výrazech jako například
while (data >> komentar >> x >> komentar >> y) { /* ... */ }