"objektum orientált programozás alapjaira (kostruktor-destruktor, öröklődés, virtual fv-ek),"
Ezzel picit vitatkoznék: ennyitől csak OOP eszközök felhasználásával készített program lesz a végeredmény, ami messze van az objektum orientált programozástól.
Ha gányolás, akkor Qt + Python variációt javasolnám első próbálkozásra, mert gyorsabban lehet kisebb, de már működő, használható alkalmazásokat írni vele. Igaz, így a Qt5 jó eséllyel kiesik.
Ha meg programozás, akkor előbb célszerű pár hónapot áldozni az OOP elméleti alapjaira (ami messze több annál, hogy az OOP kulcsszavakat használod a programban) és csak utána belevágni az egészbe (lásd Robert C. Martin könyvei!)