工作总结

Introduction #

记录工作中遇到的难点及解决方法

乱码
因此以下几行等价(以 UTF-8 编码保存 C++ 源文件): const char s1[] = " 最喜欢 C++ 了! "; const char s2[] = "\xe6\x9c\x80\xe5\x96\x9c\xe6\xac\xa2\x43\x2b" "\x2b\xe4\xba\x86\xef\xbc\x81"; const char s3[] = { 0xe6, 0x9c, 0x80, 0xe5, 0x96, 0x9c, 0xe6, 0xac, 0xa2, 0x43, 0x2b, 0x2b, 0xe4, 0xba, 0x86, 0xef, 0xbc, 0x81, 0x00 }; 在兼顾了计算性能和存储性能之后, Qt 小组决定 将 UTF-16 作为 QString 的编码格式 源代码中出现的中文字符串常量,在被 Qt 使用之前, 都经历了一次由「多字节编码」转换为 UTF-16 的过程 QString 可以在必要的时候由 const char* 隐 式 或 显 式 转 换 而 成 。 这 个 过 程 中 使 用 的 编 码 , 就 是 QTextCodec::codecForCStrings
数据库
附加数据库(Attach DB)https://blog.csdn.net/zhanglianyu00/article/details/78436764 attach [database] filename as database_name; detach [database] database_name; Squeezing Performance from SQLite: Insertions # https://medium.com/@JasonWyatt/squeezing-performance-from-sqlite-insertions-971aff98eef2 CREATE INDEX tag_titles ON tags (title); EXPLAIN QUERY PLAN SELECT * FROM tags WHERE title = "Kotlin";
日志模块实现思路
版本说明 # 日志模块实现 日期 版本 修改内容 2022/03/01 V0.1 创建 实现目标 # 整个上层日志最后能导出到一个文件中,方便根据日志记录顺序,查找问题。避免多日志文件不好查时序的麻烦 整个程序运行后,一直往内存中写日志,只在用户想要导出日志时,才写U盘,尽量减少程序运行时耗时 能做到内存中始终能导出最近的日志到U盘中 程序崩溃后,发生崩溃点的日志保存处理(在DEBUG版本中,将日志输出缓冲设置为0) 参考实现 # Qt5官方日志QLoggingCategory测试 # QLoggingCategory represents a certain logging category - identified by a string - at runtime. A category can be configured to enable or disable logging of messages per message type.