1. Можно использовать паттерн Singleton (почитай про него в нете).
2. Можно сделать в guiClass статический метод, который будет возвращать указатель на sql. Примерно так:
C++ (Qt)
// .h
class guiClass
{
public:
guiClass();
static sql *getSql();
private:
static sql *m_sql;
};
// .cpp
sql *guiClass::m_sql = 0;
guiClass::guiClass()
{
Q_ASSERT( m_sql == 0 )
m_sql = new sql;
...
}
sql *guiClass::getSql()
{
return m_sql;
}
Использование в guisubclass:
C++ (Qt)
void guisubclass1::method()
{
sql *theSql = guiClass::getSql();
Q_ASSERT( theSql != 0 );
}
Есть и другие варианты.
В каждом варианте есть свои + и -. Решать нужно в зависимости от текущих задач.