摘要:
import <iostream>; int main() { std::cout << "hello world\n"; return 0; } 编译器:VS-2022 C++语言标准:C++20 项目属性设置: 属性 C/C++ 常规 扫描源以查找模块依赖关系:是 属性 C/C++ 常规 将包含 阅读全文
摘要:
按如下设置vs工程属性: ##cmake生成带调试信息的release工程 set(CMAKE_CXX_FLAGS_RELEASE "$ENV{CXXFLAGS} -Od -Wall") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /utf-8") set(CMA 阅读全文
摘要:
基本用法 grep str file在文件file中查找字符串str grep -n str file使用-n选项查找字符串str 常用选项 -i 不区分大小写(默认是区分大小写的) -n 输出该字符串所在行的行号 --color 查找到的字符串高亮显示(ubuntu默认高亮) -c 统计符合条件的 阅读全文
摘要:
一、Qt事件循环(eventloop) 1.事件循环一般用exec()函数开启。 QApplicaion::exec()、QMessageBox::exec()都是事件循环。其中前者又被称为主事件循环。 事件循环首先是一个==无限“循环”==,程序在exec()里面无限循环,能让跟在exec()后面 阅读全文
摘要:
为什么使用inline 为了解决一些频繁调用的小函数大量消耗栈空间(栈内存) inline和宏定义的区别与联系 inline既有宏定义效率高的优点,又有类型检查的安全,可以说inline的出现就是在某些情况下取代宏定义 内联函数与一般函数区别 内联函数比一般函数在前面多一个inline修饰符。 内联 阅读全文
摘要:
下载 到Boost官网下载 安装 运行 bootstrap.bat(Win) boostrap.sh(Linux),会在当前目录下生成一个 b2.exe ,然后在命令行输入b2 --build .以及b2 --install .将boost库安装到默认目录下,Windows是C:\\ 使用 CMak 阅读全文
摘要:
参考:用vs编写和调试linux C++程序 Windows自带Linux子系统 ==以下示例使用VS2022 WSL2:Ubuntu22.04== 一、VS以Linux环境调试Sln工程 1.安装远程调试所需软件包 gdbserver和gdb用于远程调试; SSH协议族可以进行远程控制,opens 阅读全文
摘要:
git常见命令使用方法 Linux使用Git $ sudo apt install git # 安装git $ git config --global user.name "user name" $ git config --global user.email "user email" $ sudo 阅读全文
摘要:
std::move,std::ref,引用等用法 std::bind用法 一、线程调用的函数含有参数 多线程中的函数参数如果为==引用==必须使用std::ref(函数式编程的参数默认使用拷贝方式),多线程中的函数参数如果为==IO==(socket应该也需要,没有测试过)必须使用移动语义(std: 阅读全文
摘要:
一、std::bind stdbind会把所有参数都拷贝,即使它是个左值引用。std::thread就是最好的例子,std::ref也是为了stdbind而引入的 std::bind的第一个参数是函数名,普通函数做实参时,会隐式转换成函数指针。绑定类成员函数时,第一个参数表示对象的成员函数的指针,第 阅读全文