Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
50
20Wprowadzeniedoprogramowania
operatorem<<.std::sqrt(x)stanowiwywołaniefunkcjionazwiesqrtzawartej
wbibliotecestandardowej3-stądprefiksstd::oraz#include<cmath>-zxwcharak-
terzejejparametru.Innymisłowy,wiedzącjuż,żexjestnieujemne,wywołujemygotową
funkcję,któraobliczadlanaspierwiastekkwadratowy.Pojawiasiępytanie,cobysięstało,
gdybyxbyłoujemne?Tozależy,alenapewnonicdobrego.Sytuacjatakajestznanajako
niezdefiniowanezachowanie(ang.undefinedbehavior,wskrócieUB)inależyjejunikać.
Ostatnimobiektemprzesłanymnaekranwlinii[14]jeststd::endl.Polecaonakom-
puterowi,aby(i)umieściłkursorwnowymwierszuoraz(ii)wyczyściłwyjście,coskutkować
będzieprzekazaniemwszystkichsymbolinaekran.Pierwsząakcję-przejściedonowego
wiersza-możnarównieżwykonać,dodając\ndostałejtekstowej,takjakpokazanoto
wwierszach[14,16].
Wyjaśnijmyteżwreszcieznaczeniewszechobecnegooperatoraustaleniazakresu::
(dwóchdwukropków,czyliczterokropka).Jestonwykorzystywanydouzyskiwaniado-
stępudoskładowychprzestrzeninazw,takichjakdaneifunkcje,klasyorazstruktury,
coomówionejestwdalszychczęściachniniejszejksiążki.Jegoskładniapokazanajest
narysunku2.8.
Naprzykładstd::coutwpoprzednimfragmenciekoduoznaczaobiektcoutzprze-
strzeninazwstd.Tenostatnielementoznaczaprzestrzeńnazwbibliotekistandardowej.
nazwa_przestrzeni_nazw
nazwa_struktury
nazwa_klasy
nazwa_składowej
Rysunek2.8.Składniaoperatorazakresu::pozwalającegonauzyskaniedostępudoskładowychprze-
strzeninazw,strukturiklas
2.4.5.(x)Budowalinuksowejpostaciwykonywalnej
Wtympodrozdzialepokażemy,jakzbudowaćaplikację,wprowadzająckilkapoleceńdo
systemuoperacyjnegoLinux4.Niepowinnozaskakiwać,żeogółdziałań,jakienależywy-
konać,równieżzostałujętywpostacinastępującegoalgorytmu.
.Otwórzoknoterminala(wLinuksiemożeszwykorzystaćskrótklawiaturowy
Ctrl+Alt+T).
.Uruchompolecenielsl,abywylistowaćplikiikatalogi.Poniżejznaleźćmożna
przykładowyrezultatwykonaniategopolecenia.
3Więcejinformacjiobibliotecestandardowejmożnaznaleźćnastroniehttps://en.wikipedia.org/
wiki/C%2B%2B_Standard_Libraryorazhttps://en.cppreference.com/w/cpp/header.
4WtymprzykładziekorzystamyzUbuntu18.04zainstalowanegojakolinuksowapowłokabash
wWindows10.JednakmożetobyćdowolnadystrybucjaLinuksazzainstalowanymgcc(zob.np.
https://linuxize.com/post/how-to-install-gcc-compiler-on-ubuntu-18-04).