-
Fototrend
Új hozzászólás Aktív témák
-
opr
nagyúr
Ezt ugy szoktak, hogy business logicon belul siman minden std::string, aztan van egy fuggvenyed, ami a konkret -esetunkben "system(valami fajta string)" hivast vegzi. Na, ez a fuggveny van ugy deklaralva, hogy elfogadja a sima std::stringet, aztan van ket lehetoseged:
headerben ott a szignatura, hogy "inline const makeTheSystemCall(std::string&);"
a) a cpp fileban meg fuggvenytorzson belul mittomen #ifdef OS_WIN aztan #ifdef OS_LINUX, stb.
b) a cpp fileban harom kulon konkret fuggveny van #ifdef-be rakva, nyilvan mindig csak az "aktiv", ami eppen van. Tehat van harom kulon fuggveny a harom OS-re. Szerintem ez a megoldas sokkal tisztabb, En igy szoktam. Tipuskonverziok, ha mondjuk a win-esnek valamiert a wchar-os moka kell, akkor itt, fuggvenyen belul tortennek, business logic marad mindenhol sima std::string.Ha visual studiot hasznalsz, akkor minden tamogatott OS kap egy kulon konfiguraciot, amikhez mindhez tartozik egy props file, ahol definialod az OS_VALAMI makrot, meg ha kell, include directory-kat meg stb-ket.
Ez a modszer azert jo, mert karbantartani is konnyu, ha valami platformspecifikus eltorik, az nem a programot tori el, csak a platformot, tesztelni is konnyu es atlathato is. Termeszetesen a platformspecifikus include-ok is ifdef blokkokban vannak. Plusz nagyon szepen elkulonul a buniess logic, ami igy alapbol esszeru kereteken belul platformfuggetlen, meg a platformfuggo rendszerhivasok.
"Programozó vagyok. Ez azt jelenti, hogy amit leírok, megtörténik." :D “The only valid measurement of code quality is What-The-F**ks/Minute.” - Robert Martin
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Ismét E-ink kijelzős telefon-frissítés a Hisense-től
- Asszociációs játék. :)
- Amlogic S905, S912 processzoros készülékek
- S.T.A.L.K.E.R. 2: Heart of Chornobyl
- Óvodások homokozója
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- Redmi Pad Pro - jól sikerült
- One otthoni szolgáltatások (TV, internet, telefon)
- Okos Otthon / Smart Home
- iPhone topik
- További aktív témák...
- Intel i5-12500t 6c/12t - 2.0 Ghz / MaxBoost: 4.4 Ghz
- UFF! HP EliteBook 850 G8 Fémházas "Kis Gamer" Laptop 15,6" -65% i7-1185G7 32/1TB Iris Xe FHD HUN
- Szépséges! HP EliteBook 850 G7 Fémházas Szuper Strapabíró Laptop 15,6" -65% i7-10610U 32/1TB FHD HUN
- I7-4770K processzor 4mag 8 szál 3,5 ghz
- Gigabyte GA-Z87X-D3H 1150 es alaplap
- Pioneer minihifi
- Gainward GeForce RTX 3060 Ghost 12GB GDDR6 192bit Videokártya,hibátlan állapotban!
- ASUS Radeon RX 6600 8GB GDDR6 128bit Videokártya,hibátlan állapot,tesztekkel!
- SAPPHIRE Radeon PULSE RX 6600 8GB GDDR6 128bit Videokártya,hibátlan állapot,tesztekkel!
- GeForce GTX 1660 Ti MINI ITX 6G,hibátlan állapotban,tesztekkel!