C++
C++一些基础骚操作
天空中的野鸟
这个作者很懒,什么都没留下…
展开
-
Linux core dump调试
一 、什么是core dump直译为核心转储,实际就是程序运行崩溃时的内存快照,用来调试程序异常崩溃的工具。二、配置core dump1.开启core dump一般linux 默认是不开启Core dump的,可以通过ulimit -c 来查看,如果等于0就是没开启。如图所示:可以通过配置/etc/security/limits.conf文件来开启core dump。找到 soft core那行,解开注释。并配置value为你想要的数字,如图配置为500M。数字大小为core dump最大保存原创 2021-06-15 19:16:09 · 583 阅读 · 0 评论 -
Cmake传入项目版本号
工程中经常需要设置版本号,如果总是手动去代码里改版本号就太麻烦了。所以可以选择使用CMake传输版本号。首先新建个config.h.in的文件内容如下#ifndef INCLUDE_GUARD#define INCLUDE_GUARD#define PROJECT_NAME "@PROJECT_NAME@"#define PROJECT_VER "@PROJECT_VERSION@"#define PROJECT_VER_MAJOR "@PROJECT_VERSION_MAJOR@"#d原创 2021-06-08 15:29:01 · 1827 阅读 · 0 评论 -
cmake C++11 undefined reference to `pthread_create‘
使用cmake 编译c++ 11及以上版本时,若使用多线程,则可能出现undefined reference to `pthread_create'在网上查了后都说pthread不是linux的默认库。最简单直接方法就是在cmake的CMAKE_CXX_FLAGS选项中加上pthread选项。et(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14 -pthread")...原创 2021-04-30 16:32:57 · 571 阅读 · 1 评论 -
std::string
一、另类的构造方式1. string s(cp, n)s是cp指向的数组中前n个字符的拷贝。//此数组应该至少包含n个字符 char cp[] = "i am a cp array"; std::string s(cp, 9); std::cout << s << std::endl;输出:i am a cp2.string s(s2, pos2)s是string s2从下标pos2开始的字符的拷贝。 std::st原创 2021-03-22 10:12:41 · 363 阅读 · 2 评论