Multiplatform szoftverfejlesztés 2017 ZH

A VIK Wikiből

Sablon:Noautonum A feladatok emlékezetből lettek leírva, nem pont így szólt a szövegük, a megoldások hibákat tartalmazhatnak.

1. feladat

class A{
   int* buff;
   int db;

public:
   A(): db(0), buff(new int[10]) {
   }
}

A createA(){
   A a();
   return a; 
}

void main(){
   A a1 = createA();
   A a2 = a1;
}

a) Milyen memóriakezelési hibák vannak a kódban? (5p)

b) Írja meg a hiányzó kódrészleteket, hogy helyesen működjön a program (20p)

c) Mennyi helyet foglal a program a heapen? (5p)

2. feladat

Írjon programot (lambda kifejezés használatával), amivel az alábbi függvény visszatérési értéke 3 lesz!

int vminev(F f){
   return f(f(1))*f(0);
}

3. feladat

Interop. Egy C++/CLI osztályt kellett írni, amit lehet C#-ból használni. Egy Dog osztály, legyen egy int property-je, ami írható, olvasható, és egy string property-je, ami csak olvasható.

4. feladat

QML. Az alábbi ListModelhez kellett ListView-t írni.

ListModel {
   id: contacts
   ListElement { name: "Valami1"; img: "path1"; vmi: true }
   ListElement { name: "Valami2"; img: "path2"; vmi: false }
   ListElement { name: "Valami3"; img: "path3"; vmi: true }
}