c++
文章平均质量分 67
^花九九
这个作者很懒,什么都没留下…
展开
-
extern关键字
它的作用就是声明函数或全局变量的作用范围的关键字,其声明的函数和变量可以在本模块活其他模块中使用,记住它是一个声明不是定义!也就是说B模块(编译单元)要是引用模块(编译单元)A中定义的全局变量或函数时,它只要包含A模块的头文件即可,在编译阶段,模块B虽然找不到该函数或变量,但它不会报错,它会在连接时从模块A生成的目标代码中找到此函数。如果是,在这个宏定义之后的代码会被编译器所识别。extern可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。原创 2023-12-01 11:28:24 · 340 阅读 · 0 评论 -
c++17std::apply与std::make_from_tuple.
在C++17标准之前,处理元组和可变参数模板是一件相对繁琐的事情。例如,如果我们想要将一个元组的所有元素作为参数传递给一个函数,我们需要手动解包元组,这通常需要使用模板元编程和递归。通过引入std::apply,我们可以轻松地将一个元组的所有元素作为参数传递给一个函数,而无需手动解包元组。这极大地提高了代码的可读性和效率。std::apply,std::make_from_tuple是关于std::tuple(或std::pairstd::array等可以通过std::get。原创 2023-11-29 10:01:29 · 374 阅读 · 0 评论 -
c++11元组std::tuple
元组,c++11中引入的新的类型,可类比std::pair。tuple是一个固定大小的不同类型值的集合,是泛化的std::pair,但是std::pair只能支持两个元素。理论上, 元组支持0~任意个元素。头文件#include<tuple>原创 2023-11-25 13:20:26 · 530 阅读 · 0 评论 -
lambda表达式
lambda表达式是c++11一个新的语法糖。lambda源于函数式编程的概念。,一般用于定义匿名函数,使得代码更加灵活简洁。lambda函数本质是仿函数优点:声明式编程风格:就地匿名定义目标函数或函数对象,不需要额外写一个命名函数或者函数对象。简洁:不需要额外写一个函数或者函数对象。避免代码膨胀和功能分散。lambda表达式类型在c++11中被称为“闭包类型”,特殊的非nunion的类类型。可以认为他是一个带有operator()的类。即仿函数。原创 2023-11-13 15:28:13 · 18 阅读 · 0 评论 -
enum class/enum
enum和enum class 区别,优缺点原创 2023-02-08 14:13:37 · 194 阅读 · 0 评论 -
c++单例模式
单例模式原创 2023-01-06 00:02:42 · 64 阅读 · 0 评论 -
0-1背包--动态规划
0-1背包问题,具体思想,代码实现以及动归时产生的表原创 2022-11-23 20:45:39 · 383 阅读 · 0 评论 -
shared_ptr智能指针
shared_ptr 基础源码的简单实现,make_shared和new在内存中的存储以及他们的优缺点原创 2022-11-13 21:52:17 · 115 阅读 · 0 评论 -
智能指针-unique_ptr
智能指针——unique_ptr原创 2022-11-09 21:34:10 · 646 阅读 · 0 评论 -
字符数组和字符串
/*字符数组,char arr[10]字符串 ,用"“包括的字符序列,字符串末尾有个隐藏的’\0’,以’\0’结尾字符数组是否为字符串,看是否有”"或者结尾有隐藏’\0’;有则是字符串’\0’,否则不是字符串strlen;求字符串长度,不算字符长度sizeof字节数*/#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<string.h>#if 0void Mystrcpy(char arr[],in原创 2021-09-14 19:00:41 · 58 阅读 · 0 评论 -
继承与多态基本概念
任何继承关系,派生类的方法可以访问基类里的共有和保护成员;静态联编,动态联编原创 2022-11-06 18:17:14 · 227 阅读 · 0 评论 -
智能指针-auto_ptr
智能指针的分类,auto_ptr智能指针原创 2022-11-09 17:13:23 · 433 阅读 · 0 评论 -
weak_ptr智能指针
智能指针weak_ptr使用时在内存中的存储,基础函数的简单源码实现,克服循环引用,对象析构时的顺序原创 2022-11-13 10:56:59 · 563 阅读 · 0 评论