动态加载QT安装目录下的数据库插件
使用Qt提供的设置动态库路径的方法setLibraryPaths来搜索插件动态库,这样可以避免打包时程序过大,
QString strPluginsPath = QLibraryInfo::location(QLibraryInfo::PluginsPath);
QStringList allPath = QCoreApplication::libraryPaths();
if (!allPath.contains(strPluginsPath))
{
QCoreApplication::addLibraryPath(strPluginsPath);
}
qlist的函数
使用qlist 时,当qlist的size为0时,last、first等函数会导致访问越界,需要先判断长度
类指针进行析构时的小坑
当在B类的头文件里声明了 class A,;并定义了 成员变量 A* m_a;
但是cpp里面却没有包含B类的头文件,却析构函数里进行了delete,没有使用B类的任何函数
然后在C类中进行m_a的创建和使用,
此时B类在编译时将不会报错,但是A类析构时会提示报错,因为没有B类的定义,会导致内存冲突
改进意见:谁创建谁销毁,不要跨类进行数据的销毁和创建