logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

深入浅出 Linux Ext2 文件系统:文件存储的奥秘

本文深入解析了Linux Ext2文件系统的存储机制。首先介绍了磁盘的物理结构(磁道、扇区、柱面等)和逻辑寻址方式(CHS与LBA转换)。重点阐述了Ext2文件系统的组织方式:将磁盘划分为块组,每个文件由inode存储属性信息(权限、大小等)和数据块指针,而文件名则通过目录项与inode关联。通过分析ext2_inode结构体,解释了文件属性存储的细节,并说明了如何通过inode编号定位文件内容。

文章图片
#linux#服务器#运维 +4
实现自定义容器——vector

本文介绍了如何实现一个自定义的vector容器。首先分析了vector作为动态数组容器的特性,包括扩容机制和基本成员变量(起始地址、结束位置和容量)。然后详细讲解了构造函数的实现,包括普通构造、拷贝构造和移动构造,并提供了必要的工具函数如空间分配、元素初始化和资源交换等。接着重点阐述了插入操作的实现,包括push_back和insert方法,以及扩容策略(通常按2倍扩容)。文章通过代码片段展示了关

文章图片
#rpc#dubbo#网络协议 +3
cpp容器——vector

本文介绍了C++标准库中的vector容器,主要包括以下内容: vector是序列式容器,底层实现为动态数组,支持快速访问元素 详细说明了vector的构造函数,包括默认构造、拷贝构造、范围构造等多种初始化方式 介绍了元素访问方法(at、operator[]、front、back等)和迭代器使用 讲解了容量相关操作(empty、size、reserve等)和修改操作(insert、emplace、

文章图片
#c++#数据结构#算法 +1
C++11新特性学习

C++11新特性摘要: C++11标准引入了多项现代化特性,包括:1)列表初始化统一了对象初始化方式,支持std::initializer_list;2)右值引用与移动语义通过std::move减少深拷贝,提升效率;3)完美转发结合引用折叠保持参数属性;4)可变参数模板支持灵活的参数包处理,如sizeof...计算参数数量及递归解析;5)emplace系列接口允许容器内直接构造对象,优化性能。此外

文章图片
#c++#学习#开发语言 +1
C++14 新特性:更加简洁和高效的编程体验

C++14在C++11基础上进行了优化改进,主要包括:1) Lambda表达式增强,支持泛型捕获和返回类型自动推导;2) 引入decltype(auto)实现更精确的类型推导;3) 新增std::make_unique函数模板简化智能指针创建;4) 支持二进制字面量表示;5) 提供std::shared_timed_mutex等新同步工具;6) 扩展constexpr功能支持更复杂的编译时计算。这

文章图片
#c++#java#数据结构 +2
初识c++

带你了解c++的发展历史以及基础知识

文章图片
#c++#开发语言
从了解到手撕:C++ 标准库利器 std::pair 全方位指南

场景:当一个函数需要两个返回值怎么办?传统做法:自定义一个结构体,修改函数的返回值为或者提供一个输出型参数,但是这样会影响代码的可读性,显得很笨重std::pair的优雅之处:提供了一个轻量级、标准化的解决方案,无需额外定义结构体即可方便地组合和传递两个值。最典型的应用就是在std::map中作为键值对的存储单元。我们来看一下cplusplus对pair的介绍介绍中说“这个类把一对值耦合在一起,它

文章图片
#c++#java#android +2
到底了