AndreaDO

导航

2024年2月26日 #

C++ 关键字

摘要: C++ 关键字 alignas 和 alignof用法 alignas alignas 指定了内存按照多少对齐。alignas(0) 这种写法无效,编译器会无视你的这个代码 struct alignas(8) S{}; //表示是8个字节的对齐方式 struct alignas(1) U{S s;} 阅读全文

posted @ 2024-02-26 20:08 AndreaDO 阅读(55) 评论(0) 推荐(0)

2024年2月25日 #

C++ auto与循环

摘要: C++ auto与循环 C++ auto 的介绍 typeid(p).name();可以输出auto的类型 auto 是 C++11 引入的一个关键字,用于自动类型推导。编译器会根据初始化表达式的类型来自动推导 auto 变量的类型。 使用 auto 可以简化代码,减少重复书写类型名称的繁琐,并且当 阅读全文

posted @ 2024-02-25 22:15 AndreaDO 阅读(114) 评论(0) 推荐(0)

2024年2月22日 #

C++ constexpr

摘要: C++ constexpr 比如我有一个函数,返回10 int get10() { return 10; } 我想拿去初始化数组大小 int arraynum[get10()]; 编译器会报错,因为会说只能用常量去初始化,所以我们可以用constexpr,把函数改成常量表达式,这样编译器在编译阶段就 阅读全文

posted @ 2024-02-22 12:21 AndreaDO 阅读(22) 评论(0) 推荐(0)

2024年2月21日 #

C++ STL 容器-string类型

摘要: C++ STL 第一部分-容器 STL的介绍 C++的STL分为六大部分 容器分为 容器的概念 容器内元素的条件 1.必须可以复制copy或者搬移move,包括条件是在拷贝和搬移的过程中不存在副作用。 2.元素必须可以被赋值操作来复制或者搬移(因为容器和算法对复写的要求)。 3.元素可以被销毁 针对 阅读全文

posted @ 2024-02-21 23:07 AndreaDO 阅读(28) 评论(0) 推荐(0)

2024年2月20日 #

C++ 模板的笔记2

摘要: C++模板的笔记2 关于可变参函数模板借鉴了一部分笔记,感谢大佬 类模板中的嵌套 类模板可以嵌套其他类模板,就像普通类可以嵌套其他普通类一样。嵌套的类模板可以访问外部类模板的成员,包括私有成员。 示例: #include <iostream> using namespace std; templat 阅读全文

posted @ 2024-02-20 17:07 AndreaDO 阅读(52) 评论(0) 推荐(0)

C++ lambda表达式

摘要: C++ lambda表达式,又称为闭包,匿名函数 入门语法 举个例子 auto f = [](int a,int b){ return a <b; }; std::vector<int> vec = {0,11,2,23,4}; std::sort(vec.begin(),vec.end(),f); 阅读全文

posted @ 2024-02-20 12:10 AndreaDO 阅读(47) 评论(0) 推荐(0)

2024年2月19日 #

C++ 函数指针,指针函数,左值右值

摘要: C++ 函数指针,指针函数,左值右值 1.函数指针 是一个指针类型的变量,存放的内容都是函数的指针,用来间接调用函数,格式如下: int add( int a, int b) { return a+b; } int (*fadd)(int a,int b); //函数的指针,变量名需要被括号括起来, 阅读全文

posted @ 2024-02-19 23:11 AndreaDO 阅读(43) 评论(0) 推荐(0)

C++ 深拷贝浅拷贝

摘要: C++ 深拷贝浅拷贝 C++默认生成的拷贝构造函数,他的行为就是浅拷贝,他只会复制一个一模一样的的指针,并不会操作指针指向的东西。 要想实现我们的逻辑需求,就要自定义拷贝构造函数,实现深拷贝。 我们来具体说明一下上面的话 首先我们创建一个简单的类 #include <iostream> using 阅读全文

posted @ 2024-02-19 18:31 AndreaDO 阅读(42) 评论(0) 推荐(0)

2024年2月18日 #

C++ 模板的笔记1

摘要: C++模板的笔记1 C++ 函数模板 函数模板的定义 函数模板是一种可以生成不同类型函数的函数声明。函数模板的参数类型不是固定的,而是在调用时由实参类型推导出来。 语法: template <typename 参数列表> 函数返回值类型 函数名(参数列表) { 函数体 } 示例: template 阅读全文

posted @ 2024-02-18 15:30 AndreaDO 阅读(51) 评论(0) 推荐(0)

2024年2月14日 #

Effective C++ 第一章:让自己习惯C++

摘要: Effective C++ 第一章:让自己习惯C++ 引言 最近在阅读这本《effective C++ 改善程序与设计的55个具体做法》这本书,为了以后忘记的时候回顾,写一些笔记,每次笔记大概记录一个章节的内容。 条款1.视C++为一个语言联邦 C++最早只是C语言的扩充,在C基础上加上了面向对象特 阅读全文

posted @ 2024-02-14 23:01 AndreaDO 阅读(38) 评论(0) 推荐(0)