
C++语法与数据结构
文章平均质量分 77
以C++98版语法为标准开始介绍
Jcrry
这个作者很懒,什么都没留下…
展开
-
C++术语
RAII(资源获取即初始化)是一种C++编程技术,用于管理资源的获取和释放。它基于C++的对象生命周期和析构函数的特性,通过在对象的构造函数中获取资源,在析构函数中释放资源,来确保资源的正确释放。RAII的核心思想是将资源的获取和释放绑定到对象的生命周期中。当对象被创建时,它会获取所需的资源;当对象被销毁时,它会自动释放资源。这样可以确保资源在任何情况下都会被正确释放,无论是正常的代码路径还是异常情况下。原创 2023-08-01 14:24:58 · 323 阅读 · 0 评论 -
lambda表达式
当我们需要在某个地方定义一个简短的函数对象,但又不想专门为其定义一个函数或者函数对象时,lambda表达式就非常有用了。它是一种可以在代码中直接定义并使用的匿名函数。下面是各个部分的解释:捕获列表(capture list):用于指定lambda函数体中需要访问的外部变量。捕获列表的形式可以是[][&][=][var][&var][=, &var]等。[]表示不捕获任何外部变量,[&]表示引用所有外部变量,[=]表示拷贝所有外部变量,[var]表示只捕获变量var,[&var]表示引用变量var,原创 2023-08-01 09:35:15 · 131 阅读 · 0 评论 -
CMake简介
编译器,是一个根据源代码生成机器码的程序。该命令会调用编译器程序g++,让他读取main.cpp中的字符串(称为源码),并根据C++标准生成相应的机器指令码,输出到a.out这个文件中,(称为可执行文件)。之后执行该命令,操作系统会读取刚刚生成的可执行文件,从而执行其中编译成机器码,调用系统提供的printf函数,并在终端显示出Hello, world。原创 2023-07-31 10:48:13 · 1297 阅读 · 0 评论 -
STL标准模板库 字符与字符串 string,string_view,const char *
主要对字符与字符串string,string_view,const char * 做出了相应的详解 可供大家参考原创 2023-07-28 11:54:22 · 200 阅读 · 0 评论 -
STL标准模板库 set容器
set 作为模板类,其实有两个模板参数:set第一个 T 是容器内元素的类型,例如 int 或 string 等。第二个 CompT 定义了你想要的比较函子,set 内部会调用这个函数来决定怎么排序。如果 CompT 不指定,默认会直接用运算符 < 来比较。这里我们定义个 MyComp 作为比较函子,和默认的一样用 < 来比较,所以没有变化。} };return 0;这里我们把比较函子 MyComp 定义成只比较字符串第一个字符 a[0] < b[0]。原创 2023-07-13 22:15:28 · 317 阅读 · 0 评论 -
STL标准模板库 vector容器与迭代器入门
C++运算符重载,它可以让你的返回值不是一个指针而是一个特殊的类(迭代器) ++运算符的内部其实不是给指针++反而是把它的结点指针指向结点的next。如果是自定义类,则会调用元素的默认构造函数(例如:数字类型初始化为0 ,string会初始化为空字符串,指针类型会初始化为nullptr)容器的功能就是存储数据 迭代器的功能就是指向数据,并且可以实现前后移动(指针)算法和容器的接口的存在。C++里面的区间都是前面的是包含的后面是不包含的 [beg,end)第一个指针是指向堆上的地址(起始地址)原创 2023-04-22 21:05:20 · 1050 阅读 · 1 评论 -
动态数组(内存分配)
写代码:描述 事 物事 函数 代码语句 算法物 数据 数据结构。原创 2023-04-17 20:17:20 · 256 阅读 · 0 评论 -
C++面向对象编程思想
C++构造函数 (专门进行初始化)不传参数的叫做默认构造函数 构造函数可以进行重载(多个参数 一个参数)看你传的是那个参数就调用那个构造函数。1.使用struct 来定义类 所有的成员默认都是共有的(public)除非显式声明为私有的 所有的对象都是共有的 成员的访问权限不一样。2.为了和C语言当中的struct做区别 , 如果使用class来定义 默认都是私有的(private)除非显式声明为其他类型。对象:一切皆对象 对象的具体 对象就是类的具体化。成员方法:(成员方法) 能力。原创 2023-04-15 21:36:43 · 293 阅读 · 0 评论 -
引用型变量(试题)和成员函数
d)另外指针常量的特点是必须初始化,引用型变量必须在定义的同时挂在某个变量上。c)类似于指针常量,指针常量的意思就是指向某个地址,在生命期内再不能改了;b)引用做参数时主调函数好用,替你取地址,被调函数也好用,不用*符号;C++下成员函数实际上是在全局写这,只不过有相应的函数指针来调用。a)C语言开始有一个NULL定义,必须包含stdio.h头文件。a)C++掩盖真相的语法之一,其内部真实原理就是指针变量。引用型变量必须挂载在某个地址上。引用型变量也是有地址的。在堆空间上分配和释放。在堆空间上分配和释放。原创 2023-04-15 14:53:49 · 115 阅读 · 0 评论 -
c++ 语法出初学(new-delete cout cin namespace)
a)C语言中需要使用malloc与free申请与释放堆空间:b)C++把堆空间申请与释放做成关键字,底层也是malloc和free。c)用起来绝对舒服,成为关键字不用包含头文件。d)就如同栈一样的模式,比如:栈内申请一个数组:int a[20];//堆数组//栈 int a [ 20 ];//堆空间 int n = 20;//给我来20个int Input(p , n);//用完记得释放 printf("\n");原创 2023-04-14 15:38:37 · 114 阅读 · 0 评论