Adatok
veni_vidi_vici
0 bejegyzést írt és 24 hozzászólása volt az általa látogatott blogokban.
JUnit tesztelünk és átszövő vonatkozásoka szövünk az első védésbe.
Ha az elmúlt laborokon a védésed keretében az eredetileg C++-ból átírt humán genomos első védést áttetted Maven projektbe, akkor ma azzal kezdheted a munkát
Ha nem, akkor kérd el attól a Maven…..
veni_vidi_vici
2013.11.28 19:37:47
goparallel.sourceforge.net/exploring-new-lambda-features-c11/
A lambda függvények a 2011-es szabvány óta elérhetőak a C++ nyelvben. Általános ötletük, hogy létrehozunk egy függvényt és eltároljuk azt egy változóban. Erre lehetőségünk volt a C++ korábbi változataiban is, viszont mutatókat kellett manipulálnunk és a szintaxisa is bonyolult volt.
Az első példában létrehozunk egy lambda függvényt, eltároljuk egy változóban, majd kétszer meghívjuk a függvényünket:
imagerz.com/QE4SCktvAwMCX1JMEQVQ
A második példában láthatjuk hogyan tehetőek láthatóvá a lambda függvény hatókörében lévő változóink a lambda függvény törzséből (referencia és érték szerinti átadás esetén):
imagerz.com/QE4SCktvAwMCX1JMEAVQ
imagerz.com/QE4SCktvAwMCX1JMEwVQ
(érték szerinti átadás esetén nem változtatható meg a külső változók értéke)
A harmadik példában kiderül, hogy a külső változók eltárolása a lambda függvényben fordítási időben történik.(a lambda függvény létrehozásakor y értéke 5 volt)
imagerz.com/QE4SCktvAwMCX1JMEgVQ
+30 pont
A lambda függvények a 2011-es szabvány óta elérhetőak a C++ nyelvben. Általános ötletük, hogy létrehozunk egy függvényt és eltároljuk azt egy változóban. Erre lehetőségünk volt a C++ korábbi változataiban is, viszont mutatókat kellett manipulálnunk és a szintaxisa is bonyolult volt.
Az első példában létrehozunk egy lambda függvényt, eltároljuk egy változóban, majd kétszer meghívjuk a függvényünket:
imagerz.com/QE4SCktvAwMCX1JMEQVQ
A második példában láthatjuk hogyan tehetőek láthatóvá a lambda függvény hatókörében lévő változóink a lambda függvény törzséből (referencia és érték szerinti átadás esetén):
imagerz.com/QE4SCktvAwMCX1JMEAVQ
imagerz.com/QE4SCktvAwMCX1JMEwVQ
(érték szerinti átadás esetén nem változtatható meg a külső változók értéke)
A harmadik példában kiderül, hogy a külső változók eltárolása a lambda függvényben fordítási időben történik.(a lambda függvény létrehozásakor y értéke 5 volt)
imagerz.com/QE4SCktvAwMCX1JMEgVQ
+30 pont
veni_vidi_vici
2013.11.28 23:56:10
Múlt hét szerdától elérhető a git repó a SF-on, most már át is szerveztem: egy "Helló, Világ!" szintű Google Protobuf kommunikációs osztályt formálisan betettem a Maven projektbe (lásd a pom.xml-t). Ez lesz az alapja a YANonymous Construct és a YANonymous Puzzle közötti…..
veni_vidi_vici
2013.11.06 01:25:28
BBP-s sebességteszt (5 + 25 pont)
A méréseket egy Ubuntu 12.04.3 LTS operációs rendszerrel felszerelt 3.2.0-55.85 verziójú kernellel ellátott Intel Core i3-2350M processzoros 4GB memóriával rendelkező gépen gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3 verziójú gcc, gij (GNU libgcj) version 4.6.3 és java version "1.6.0_27" OpenJDK-s Java, Mono JIT compiler version 2.10.8.1 (Debian 2.10.8.1-1ubuntu2.2) verziójú Mono(c#), valamint Python 2.7.3 verziójú Python mellett végeztem el.
screenshotok:
10^6 imagerz.com/QE4VXUtvAwMCXl8bFQVQ
10^7 imagerz.com/QE4VXUtvAwMCXl8bFAVQ
10^8 imagerz.com/QE4VXUtvAwMCXl8bFwVQ
python source:
pastebin.com/m8UsEd15
eredmények táblázatba foglalva:
imagerz.com/QE4VXUtvAwMCXl8bFgVQ
A méréseket egy Ubuntu 12.04.3 LTS operációs rendszerrel felszerelt 3.2.0-55.85 verziójú kernellel ellátott Intel Core i3-2350M processzoros 4GB memóriával rendelkező gépen gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3 verziójú gcc, gij (GNU libgcj) version 4.6.3 és java version "1.6.0_27" OpenJDK-s Java, Mono JIT compiler version 2.10.8.1 (Debian 2.10.8.1-1ubuntu2.2) verziójú Mono(c#), valamint Python 2.7.3 verziójú Python mellett végeztem el.
screenshotok:
10^6 imagerz.com/QE4VXUtvAwMCXl8bFQVQ
10^7 imagerz.com/QE4VXUtvAwMCXl8bFAVQ
10^8 imagerz.com/QE4VXUtvAwMCXl8bFwVQ
python source:
pastebin.com/m8UsEd15
eredmények táblázatba foglalva:
imagerz.com/QE4VXUtvAwMCXl8bFgVQ
veni_vidi_vici
2013.11.20 20:48:24
C++11 lambda függvények (20 pont)
A lambda függvények (névtelen függvények) a C++11 legérdekesebb újításai közé tartoznak: tiszta, tömör szintaxissal váltják fel az eddig használt függvényobjektumokat és függvénypointereket.
imagerz.com/QE4SW0tvAwMCX1lMEQVQ
Ebben az egyszerű példaprogramban a container függvényben létrehozunk egy lambda függvényt, eltároljuk azt a myfunc változóban, majd visszaadjuk az értékét. Az auto kulcsszót használtuk, a fordító ugyanis képes meghatározni a lambda függvény típusát. A container függvény visszatérési értéke azonban már nem lehet auto, itt hívjuk segítségül az std névtér function nevű template osztályát, mellyel egyszerűen tárolhatjuk lambda függvényeinket. A main függvényben eltároljuk a container függvény visszatérési értékét egy változóba, majd (mivel az egy függvény) háromszor mehívjuk azt.
imagerz.com/QE4SW0tvAwMCX1lMEAVQ
A következő példaprogram az úgynevezett "closure" technikát mutatja be. A lambda függvényünk használja a hívó függvény egyik paraméterét. A main függvényt megvizsgálva könnyen levonhatjuk a következtetést, hogy a lamda függvényeinknek valamilyen módon "meg kell jegyezniük" az 50 és 60 értékeket.
Végezetül kijelenthető hogy a lambda függvények nagyon erős és rendkívül sokoldalúan használható elemei a nyelvnek, viszont körültekintéssel kell használnunk őket, ha nem akarunk fordítási hibát, vagy nem várt viselkedést kapni.
A lambda függvények (névtelen függvények) a C++11 legérdekesebb újításai közé tartoznak: tiszta, tömör szintaxissal váltják fel az eddig használt függvényobjektumokat és függvénypointereket.
imagerz.com/QE4SW0tvAwMCX1lMEQVQ
Ebben az egyszerű példaprogramban a container függvényben létrehozunk egy lambda függvényt, eltároljuk azt a myfunc változóban, majd visszaadjuk az értékét. Az auto kulcsszót használtuk, a fordító ugyanis képes meghatározni a lambda függvény típusát. A container függvény visszatérési értéke azonban már nem lehet auto, itt hívjuk segítségül az std névtér function nevű template osztályát, mellyel egyszerűen tárolhatjuk lambda függvényeinket. A main függvényben eltároljuk a container függvény visszatérési értékét egy változóba, majd (mivel az egy függvény) háromszor mehívjuk azt.
imagerz.com/QE4SW0tvAwMCX1lMEAVQ
A következő példaprogram az úgynevezett "closure" technikát mutatja be. A lambda függvényünk használja a hívó függvény egyik paraméterét. A main függvényt megvizsgálva könnyen levonhatjuk a következtetést, hogy a lamda függvényeinknek valamilyen módon "meg kell jegyezniük" az 50 és 60 értékeket.
Végezetül kijelenthető hogy a lambda függvények nagyon erős és rendkívül sokoldalúan használható elemei a nyelvnek, viszont körültekintéssel kell használnunk őket, ha nem akarunk fordítási hibát, vagy nem várt viselkedést kapni.
"Valakinek holnap le kell győzni a sötétséget Mondd, te kit választanál? Valakinek holnap át kell írni a régi meséket Ó, mondd, te kit választanál? Valakinek holnap meg kell váltani ezt a világot Mondd, te kit választanál?"
István a király
Az első laborfeladat (szept. 23): a…..
veni_vidi_vici
2013.09.30 04:56:01
veni_vidi_vici
2013.10.14 14:33:13
Kapcsolati háló mentés / betöltés (5 pont):
SharedPreferences osztály:
developer.android.com/reference/android/content/SharedPreferences.html
A csúcsokat egyértelműen megkülönböztethetjük a képernyőn elfoglalt x és y koordinátájuk és a képernyő orientációja alapján. Tárolnunk kell még a csúcs által tárolt pártpreferenciát. A csúcsok számát is elmentjük, hogy megkönnyítse a betöltést. Ezek után jönnek a csúcsok közti kapcsolatok. Amit tárolnunk kell: 2 csúcsot, melyek között az él húzódik, valamint az él típusát.
SharedPreferences osztály:
developer.android.com/reference/android/content/SharedPreferences.html
A csúcsokat egyértelműen megkülönböztethetjük a képernyőn elfoglalt x és y koordinátájuk és a képernyő orientációja alapján. Tárolnunk kell még a csúcs által tárolt pártpreferenciát. A csúcsok számát is elmentjük, hogy megkönnyítse a betöltést. Ezek után jönnek a csúcsok közti kapcsolatok. Amit tárolnunk kell: 2 csúcsot, melyek között az él húzódik, valamint az él típusát.
veni_vidi_vici
2013.11.04 14:39:41
"MORPHEUS: This is the Construct. It is our loading program. We can load anything from clothes, to weapons, to training simulations. Anything we need."http://www.imsdb.com/scripts/Matrix,-The.html
YANonymous = YANA (You Are Not Alone) + Anonymous = You Are Not Anonymous
Az app…..
veni_vidi_vici
2013.09.30 16:20:56
veni_vidi_vici
2013.10.07 14:28:27
veni_vidi_vici
2013.10.14 02:55:18
Belépve többet láthatsz. Itt beléphetsz
50es delay: imagerz.com/QE4SCUtvAwMCX1NNFAVQ
500as delay: imagerz.com/QE4SCUtvAwMCX1NNFwVQ