View Single Post
Old 07-23-10, 04:46 PM   #33
Registered User
Join Date: Jul 2010
Posts: 6
Default Re: is the nvidia driver falling behind?

Originally Posted by kRogue View Post
You ARE NOT encouraged to pass container objects by const reference. Give you a hint, find a public API function in Qt that accepts a constant reference to a Qt container class, same goes for QImage and QPixmap and many others.
Here's one by-reference for you:
And believe me, there are more.

Re:1) All you need to know is which classes implemented are implicitly shared.
If a method actually takes a parameter by value you can assume that it is slow (because it copies). If it isn't slow because of implict sharing, the better! If you are worried about that, because you want performance, you check whether that class is shared. If it isn't shared, well, then it might indeed be slow, so your assumption was right.

Re: 2) do I understand you correct, that you pass something by value and expect it to not be copied?

Qt's container classes can be mixed with STL containers, so your pain should not be that bad. And I know a lot of people who prefer Qt's container classes over STL. STL may be more powerful, but also way more complex.

Re: Javascript engine) are you proposing to write an abstract interface for different javascript engines? How much sense would that make? There isn't even a DOM interface you could share, AFAIK.

I suppose it's much easier to improve Qt's Javascript engine than integrate different engines.

Re: moc) I already provided them in an earlier post.
You can always debate over advantages of different implementations. And if you already have one implementation, you weigh the cost of switching that one implementation with the other against the benefit that the other would bring. If the benefit is not worth the cost, you don't switch.

Re: deletion and disconnecting of QObject children
I'm afraid this is just your own opinion that this is a bad idea.

They miss the point: if you want lots of safety choose a "managed language" such as Java, or many others. The safety provided by Qt is only skin deep and trades crashes for more subtle and harder to diagnose bugs.
So just because you don't like Qt, you say nobody should use it? I bow before the great dictator. Now do you want to start comparing Qt's API against Java's?

it does many things, but many of those it does very poorly, I would be kind in saying it is a jack of many trades and master of none.
I would say: it does a lot of things, and a lot of them better than others, in a consistent and platform independent manner. Good luck in finding other open source components that do the same things better, more consistent, interoperable, better documented, and work on all those platforms. And of course, developers should be more productive with those.

Re: GTK/GDK) How can you use GTK without GDK? You can't. Or is your point that you can use GDK without GTK? How many applications actually do this? Are those additional widget sets and libraries abstracted so that you may plug in different implementations? Not that I know of. Qt is extended by lots of third-party modules, heck, all of KDE. So no point here.

With GTK/GDK there is a C interface and a C++ interface through gtkmm, etc. Qt is C++ only AND it is a deviant form of C++ at that.
You're not going to say that gtk-- (why do you think they name it *minus* instead of plus?) is a superior widget set than Qt, do you? And, sorry, a C widget library is not state of the art anymore. We're in 2010 by now.

Re documentation) Are you suggesting that gtk is better documented than Qt? I hope not. Qt is one of the best documented library, please have a look at

I would like to see Qt fixed
You know the git repository, don't you?

However pretending that Qt is just fine is not acceptable. Put Qt on an embedded device and watch the poor thing crawl.
Maybe your definition of fine is not the same as that of others. Maybe you mix up "fine" and "perfect". Maybe Qt is not perfect on embedded devices. So there's a chance to improve it! Looking forward to your patches and input.

PS: I'm afraid we're getting slightly off-topic for an nvidia forum.

gisl is offline   Reply With Quote