EventDispatcher(事件分发)
摘要:void Run() { std::cout << "Run!" << std::endl;} /// 测试如下: int main() { EventDispatcher* eventDispatcher = EventDispatcher::Instance(); eventDispatcher
阅读全文
简单工厂的三种形式(C++)
摘要:方式三测试: std::shared_ptr<IInterface> p = CCarFactory::Create<CInterfaceImp2>();
阅读全文
Thread的两个函数detach()和join()
摘要:引自:https://www.jianshu.com/p/b5adb0ece8b9 参考链接:https://www.cnblogs.com/zhanghu52030/p/9166526.html 1.在声明一个std::thread 对象之后,都可以使用detach和join函数来启动被调线程,区
阅读全文
五个基本原则(C++11)
摘要:std::vector<int> a; auto b = a; auto& c = b; auto d = std::move(b); a是左值,因为我们能取到a的地址;b是左值,因为b是有地址并且有类型的。c是b的引用,可以取到地址,因此c也是一个左值move是一个辅助函数,他告诉编译器,想办法把
阅读全文
C++反转字符串的三种方法
摘要:1.定义反转字符串 void changeOrder1(char* data){ if (data == NULL) { return; } auto nLen = strlen(data); char *p1 = data; char* p2 = p1 + (nLen - 1); while (p
阅读全文
C++链表反转
摘要:struct Node { int num; struct Node* next; }; Node* reverseList(Node *pNode) { Node* prev = nullptr; while (pNode) { Node* pNext = pNode->next; pNode->
阅读全文
C++模板工厂示例
摘要:/// 1.定义数据访问接口 class IDataAccessInterface { public: virtual IDataInterface(){} /// 执行数据库 增删改操作 virtual void exeSql(string strSql) = 0; }; /// 2.数据访问接口
阅读全文
C++封装智能指针
摘要:引自:https://blog.csdn.net/man_sion/article/details/77196766 //模板类作为友元时要先有声明template <typename T> class SmartPtr; //辅助类template <typename T> class RefPt
阅读全文
读取命令行参数(QT版本)
摘要:测试如下: QStringList strList = QApplication::arguments(); Parser(strList);
阅读全文
分段读取文件并保存文件到数据库(QT版本)
摘要:QSqlQuery query(m_db); query.prepare("INSERT INTO files(filename,uuid,dbData,dbSize)" "values(:filename,:uuid,:dbData,:dbSize)"); query.bindValue(":fi
阅读全文