docker
常用运行容器参考
docker run -d \
--name [容器名] \
-e PUID=1002 \ # 设置启动用户
-e PGID=1002 \ # 设置启动用户组
-e TZ="Asia/Shanghai" \ # 设置环境变量
-p 5212:5212 \ # 端口转发,可多个
--restart=always \ # 总是自动重启
-v [宿主机挂载点]:[容器内部挂载点] \ # 可多个
[镜像名]
C++
使用{}初始化会在损失初始化数据时报错。
double aa = 3.1415926;
int64_t bb = aa; # 这行代码正常执行,自动损失精度
int64_t cc = {aa};# 这行代码将会报错
构建系统
cmake 常用参考
cmake_minimum_required(VERSION 3.15)
# set the project name
project(test )
# specify the C++ standard
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED True)
# 获取源文件
aux_source_directory(${CMAKE_CURRENT_SOURCE_DIR}/src ALL_SOURCE)
# 包含头
include_directories(${CMAKE_CURRENT_LIST_DIR}/include)
# set(CMAKE_CXX_COMPILER "clang++" ) # 显示指定使用的C++编译器
# 传递编译选项
# set(CMAKE_CXX_FLAGS "-g -Wall -Wextra -Werror")
# set(CMAKE_C_FLAGS "-g -Wall -Wextra -Werror")
add_compile_options("-g")
add_compile_options("-Wall")
add_compile_options("-Wextra")
add_compile_options("-Werror")
# add_compile_options("-lsodium")
# set(CMAKE_CXX_FLAGS_DEBUG "-g -Wall -Wextra -Werror" ) # 调试包不优化
# set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG " ) # release包优化
# add the executable
add_executable(${PROJECT_NAME} ${ALL_SOURCE})
# 包含库路径
# link_directories(${CMAKE_CURRENT_LIST_DIR}/lib)
# link_directories(/usr/local/lib)
# 需要链接的XXX库
# target_link_libraries(${PROJECT_NAME} sodium)
Makefile 常用命令
CFLAGS+= -g -Wall -Wextra -Werror
CPPFLAGS+= -g -Wall -Wextra -Werror