ICode9

精准搜索请尝试: 精确搜索
  • [转]PCL 常用小知识 - 采男孩的小蘑菇 - 博客园(转载请删除括号里的内容)2021-12-23 20:03:55

    (转载请删除括号里的内容) 时间计算 pcl中计算程序运行时间有很多函数,其中利用控制台的时间计算 首先必须包含头文件 #include <pcl/console/time.h>   1 2 3 4 5 6 #include <pcl/console/time.h>   pcl::console::TicToc time; time.tic(); //程序段 cout<<time.t

  • ubuntu下编译tcpdump开源抓包工具2021-12-23 20:03:28

    1.资源准备: (1)下载tcpdump源码:https://www.tcpdump.org/index.html#latest-releases (2)下载两个文件(tcpdump与libpcap):tcpdump-4.99.1.tar.gz和libpcap-1.10.1.tar.gz 2.在linux编译机中,新建一个tcpdump文件夹(路径建议全英文;另外,如果编译机是虚拟机不要放在共享文件夹里,否

  • 四种智能指针2021-12-23 17:34:12

    auto_ptr<>, unique_ptr<>, shared_ptr<>, weak_ptr<> ================================================ shared_ptr<> #include<memory> int main() { shared_ptr<int> a std::make_shared<int>(10); int* pa =

  • 自建结构体中malloc的ptr操作注意教训2021-12-23 10:03:14

            实际代码,自建结构体中,往往我会使用malloc的ptr数据空间,也往往会对这些空间进行数据memcpy拷贝操作。         但我一般会偷懒,直接拷贝不做数据空间、长度的检测,逻辑清晰时这还好,实际代码一旦复杂了、c++对象化了,有时数据拷贝长度没控制好,那就完蛋了,这种拷贝行为

  • c++智能指针解析2021-12-20 18:33:26

    1.auto_ptr 概述:C++98中引入auto_ptr,但是实现有缺陷(使用copy语义转移资源),现已弃用,在实际项目中不应该使用。 点击查看代码 ``` // CLASS TEMPLATE auto_ptr template class auto_ptr { // wrap an object pointer to ensure destruction public: typedef _Ty element_type;

  • c++11 线程池实现2021-12-20 00:03:07

    #include<iostream> #include<thread> #include<mutex> #include<condition_variable> #include<future> #include<atomic> #include<functional> #include<vector> #include<queue> using namespace std; #define THR

  • C++ python混合编程2021-12-19 21:03:33

    配置属性->常规->配置类型为应用程序(.exe)配置属性->高级->目标文件扩展名为.exe #include <iostream> #include <pybind11/embed.h> namespace py = pybind11; int main() { // start the interpreterand keep it alive py::scoped_interpreter guard{}; au

  • 常用关键字2021-12-18 18:04:53

    pragma 作用是设定编译器的状态或者是指示编译器完成一些特定的动作 #pragma once 只要在头文件的最开始加入这条指令就能够保证头文件被编译一次 gflags DEFINE_STRING(name, default value, “explaination”) DECLARE_STRING constexpr https://www.codenong.com/cs10980675

  • C++学习之字符2021-12-18 18:01:31

    参考文献 c++字符串复制/string、char*、char[]转换C++ 字符串指针和字符串指针数组详解 char*/char[]/string #include<iostream> #include<string> #include<cstring> using namespace std; int main(){ /* 定义一个const char* 然后将其转化为一个char* */ const

  • C++延迟delete对象方案:采用unique_ptr托管欲删除的对象指针2021-12-17 22:33:32

    在循环遍历容器的时候,假如容器里面存的是动态对象的指针,我们就不能简单地移除掉此容器元素,还需要把此指针指向的对象 delete 掉。 但随着业务的增长,循环中我们需要对次对象执行大量的操作,这种情形下,我们往往会延迟delete掉此对象。那么有什么方案可以实现呢? 此处介绍的方案是: 将

  • C语言内存空间动态分配--实现用户版的malloc2021-12-17 01:03:38

    #include <stdio.h> #include <unistd.h> #include <string.h> /** * C程序设计语言 第8章 动态分配内存实例 * */ // 默认每次分配最小内存 sizeof(HEADER) #define N_ALLOCATE 1024 // 用来对齐 typedef long Align; // 联合体 用来构建链表 union header { st

  • 【网易面试题】如何实现一个线程安全的shared_ptr智能指针2021-12-16 15:03:35

    题目描述 网易一面遇到过这么一个题目,面试官要求自己实现一个线程安全的shared_ptr智能指针。 题目分析 可能很多人只知道shared_ptr是C++11模块库的头文件定义的一个智能指针,即shared_ptr模版。只要将new运算符返回的指针交给shared_ptr这个“管家”,就不必担心在哪里没有del

  • 394. 字符串解码2021-12-16 12:32:11

    给定一个经过编码的字符串,返回它解码后的字符串。 编码规则为: k[encoded_string],表示其中方括号内部的 encoded_string 正好重复 k 次。注意 k 保证为正整数。 你可以认为输入字符串总是有效的;输入字符串中没有额外的空格,且输入的方括号总是符合格式要求的。 此外,你可以认为原始

  • Smart Pointers(智能指针)与Epoch-Based Reclamation (EBR)详细介绍和对比2021-12-14 22:02:22

    Smart Pointers 它基于三个概念,包括堆栈分配的指向堆分配内存的指针,扮演每个对象的垃圾收集角色和 RAII。 有 3 个 API:unique_ptr、shared_ptr 和 weak_ptr。 1)unique_ptr 只允许底层指针的一个所有者,但不支持复制,但支持移动语义。 然后,当所有者指针超出范围时,它的内存被回

  • C++解决share_ptr造成的循环引用2021-12-14 21:00:18

    参考链接:https://blog.csdn.net/yc2zgh1314/article/details/51264963      https://www.cnblogs.com/duacai/p/13341422.html   先看有循环引用问题的代码: #include<iostream> using namespace std; struct Node { shared_ptr<Node> _pre; shared_ptr<Node> _

  • 二叉搜索树--C++代码实现2021-12-14 18:31:27

    typedef int DataType; struct TreeNode { DataType data; std::shared_ptr<TreeNode> left_node; std::shared_ptr<TreeNode> right_node; TreeNode() : data(0), left_node(nullptr), right_node(nullptr) {}; TreeNode(DataType value) :

  • ptr_fun/mem_fun/mem_fun_ref2021-12-14 17:02:53

    背景介绍:当使用STL中的算法时,由于算法需要的回调函数既可以是普通函数也可以是仿函数,加入回调函数是普通函数,且算法对于函数的参数有一定要求,然而这个要求却限制了我们的需要,我们需要再另外在回调函数中加入参数时。 1、首先我们应当将普通函数转变为仿函数(函数对象) 2、在通过绑定

  • 微信HOOK 获取未读消息数量2021-12-12 20:58:56

    微信版本:3.4.5.27 要点:靠微信未读消息数量定位 1.打开CE附加微信 2.用另一个微信给这个微信发送消息 3 条位读 3.CE精准数字搜索3 4.然后取消搜索0 5.在发送2条 在搜索2 6.最后剩下3个 7.然后发送群消息,有一个是群和好友消息!剩下的都是好友消息 8.最后OD DD下内存写入断点! 9.

  • 嵌入式开发er的C语言能力自测(面试)题---top 162021-12-12 13:02:24

    准备面试刷到的,链接里是原文和答案: (a-c-test-the-0x10-best-questions-for-would-be-embedded-programmers) 这里我先只给出问题,可以作为能力自测,然后再去原文看答案。   1. 使用#define,定义一个明示变量(原文为manifest constant,“简单的宏主要用来定义那些被Kernighan和Ritch

  • 指针2021-12-10 10:04:46

    十三、指针 相比于c或c++,go语言的指针是很容易学习的,它可以更简单地执行一些任务。 1 取地址操作符& 变量是一种使用方便的占位符,用于引用计算机内存地址,使用&符号获取变量的内存地址,如下: func main() { var str = "hello world" fmt.Println(&str) // 返回结果为0xc00004c2

  • 205-ESP32_SDK开发-TCP服务器(select方式,支持多连接,高速高并发传输)2021-12-09 20:32:43

    <p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/LearnESP32" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>   你好的时候,别人说你这好那好,你不好的时

  • 【黑马教程】【指针专题】在子函数中使用malloc申请内存,错误方式和正确的方式2021-12-09 10:31:45

    #include<iostream> using namespace std; #include<string> //Define a structure void getMem(char *ptr) { ptr = (char*)malloc(sizeof(char)*100); if(nullptr == ptr) { cout<<"getMem ptr is nullptr"<<endl;

  • undefined reference to `FilterRegistry::RegisterFilter(std::shared_ptr<Filter>&)'2021-12-07 14:36:14

    记一次undefined reference排查 一、背景: 编译模块A,三部曲通过 编译模块B(依赖模块A),报错: /usr/bin/ld: OrkAudio.o: in function Transcode(CStdStr<char>&): /home/lings/GitSpace/oreka/orkaudio/OrkAudio.cpp:173: undefined reference to FilterRegistry::RegisterFilter(std

  • 智能指针的详解2021-12-06 18:59:20

    unique_ptr 是 C++ 11 提供的用于防止内存泄漏的智能指针中的一种实现,独享被管理对象指针所有权的智能指针。unique_ptr对象包装一个原始指针,并负责其生命周期。当该对象被销毁时,会在其析构函数中删除关联的原始指针。 unique_ptr具有->和*运算符重载符,因此它可以像普通指针

  • Effective C++读书笔记~7 模板与泛型编程2021-12-06 09:04:32

    目录条款41:了解隐式接口和编译期多态显式接口和运行期多态隐式接口和编译期多态小结条款42:了解typename的双重意义小结条款43:学习处理模板化基类内的名称编译器无法识别模板基类内名称解决办法小结条款44:将与参数无关的代码抽离templates小结条款45:运用成员函数模板接受所有兼容类

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有