I assume you mean QSqlResult, there is no QtSqlResult.

What is this hook used for?
Qt4: Implements various 'virtual' functions in a way that maintains binary compatibly for Qt4.
Qt5: Nothing. Qt 5.x onward removes the existing uses of this hook and replaces them with real virtual functions.
See http://qt.gitorious.org/qt/qtbase/co...21e9db20a91b85

If you want you concrete subclass to have extra functions to configure it then by all means add them and set their values in your plugin before returning your QSqlResult*: they will not be visible through the QSqlResult interface. If the extra properties must be manipulated through the QSqlResult interface then you need to use the virtual_hook() function: see the Qt 4.8 code for example.