Sem tam nekdo zkousel udelat i C bindings pro Qt (a tedy i udelal), jenze to nikdy nikoho nezaujalo, protoze to proste nedava smysl. To je jako svazat si tkanicky u bot a pak zkouset behat. C++ je vicemene nadmnozina C, stejne by se ten vysledny C program pro Qt musel linkovat i s C++ knihovnami, pouzivani Qt z C by bylo jen slozitejsi, tak jaky to ma mit smysl?
Jinak, za samotny prispevek by mi to ani nestalo, protoze to stejne nema cenu se snazit, ale pro technickou presnost: Moc neni preprocesor, jediny preprocesor pouzity v Qt je standardni C++ preprocesor. A misto snahy o nejakou argumentaci si to zjednodusim tim, ze to rika treba i Havoc Pennington : http://freedesktop.org/pipermail/dbus/2004-March/000817.html
Uznávám, že označení moc za preprocesor není nejšťastnější. Program moc čte definici třídy s přidanými konstrukty Qt (signals, slots, apod.) a na základě toho generuje zdrojový text v C++ obsahující implementace některých funkcí (např. signálů). Klíčová slova pro moc (např. signals) jsou definována jako makra tak, že po průchodu C++ preprocesorem vznikne korektní zdrojový text v C++.
No právě že jak kdy vznikne "korektní zdrojový text v C++". Chuťovka je třeba když je v něčem dohromady Python a Qt. Qt #definuje slots, což je náhodou jméno jakési private proměnné kdesi hluboce v pythonu, takže v headeru pythonu je najednou syntax error. Nádhera. Záleží na tom, co se includne dřív... :-|