自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 C++ 多线程编程:锁的六种写法

在多线程编程中,锁是一种重要的同步机制,用于避免多个线程在并发访问共享资源时发生竞态条件。C++ 提供了多种锁机制,它们各自适用于不同的场景。本文将介绍 C++ 中常用的锁,包括 `std::mutex`、`std::unique_lock`、`std::shared_mutex`、`std::timed_mutex`、`std::recursive_mutex` 和 `std::lock_guard`,并通过示例说明每种锁的原理、使用方式及其适用场景。

2025-01-02 09:19:30 1480 2

原创 Ada程序设计-第8章 面向对象特性(Oriented Object Features)

Ada95 新增的一项主要功能就是对面向对象编程的直接支持,在这之前的 Ada83 也已经具有基于对像(object-based)的特性。两者区别在于基于对象没有继承和多态性这两项OOP的主要特性。在这一章中,我们就介绍 Ada 面向对象的特性。

2024-12-31 16:19:38 705

原创 Ada程序设计-第7章 程序包(Package)

多子程序封装在一个文件里过于庞大,且分类不清,这时就使用了程序包(package),作为一种分组机制,将子程序归类封装成独立的单元。Ada 的程序包机制主要受 Pascal 及 70 年代时的软件工程技术影响。当时很主要的一项革新就是软件包的概念。软件包使一个大程序分离成了多个单元,使软件维护更加方便,可重用性也更高,是结构化编程思想中必不可少的一部份。

2024-12-30 16:59:07 925

原创 Ada程序设计-第6章 子程序(Subprogram)

一个程序是由一个或更多的子程序组成,以一个主过程(main procedure)为根本,主过程类似与 C 下的 main 函数。子程序包括过程(proceudre)和函数(function)两类,两者区别在于,过程没有返回值,而函数有返回值。子程序,包括函数和过程,以及下一章所讲述的程序包,是构成 Ada 程序的基础。Ada 提供了一些和 C、Pascal 不同的新特性,如重载、参数模式、分离程序等。

2024-12-30 15:13:55 529

原创 Ada程序设计-第5章 控制结构(Statement)

本章介绍 Ada 里选择结构的if、case 语句和循环结构的 loop 语句及其变种,并介绍顺序结构中以前没讲过的 null 和块语句(block statement),最后是比较有争议的 goto 语句。

2024-12-30 11:22:08 949

原创 Ada程序设计-第3章 数组(Array)

数组是一种复合数据类型(composite type),包含多个同一种类型的数据元素。数组元素的名称用指定的下标表示,这些下标是离散数。数组的值则是一个由这些元素的值构成的合成值(composite value)。Ada 下的数组和其它语言很相似,只是多了一些“宽松”的规定,如无约束数组、动态数组,更加方便了用户。字符串类型 String,Wide_String 等则是数组元素为字符型的数组类型。

2024-12-27 17:00:01 886

原创 Ada程序设计-第4章 记录(Record)

记录则是由命名分量(named component)组成的复合类型,即具有不同属性的数据对象的集合,和C 下的结构(structure)、Pascal 下的记录(record) 类似。Ada 的记录比它们提供的功能更强,也就是限制更少。同时记录扩展(record extension)是 Ada95 中类型扩展(继承)机制的基础,使记录的地位更加突出。

2024-12-27 16:54:26 747

原创 Ada程序设计-第2章 基本数据类型和表达式(Basic Types and Expressions)

数据类型是一门计算机语言最基本的特性,表示一个对象的类型,是数字、字符或其它类型。由于 Ada 在数据类型上提供的强大处理能力,我们又不能很简单地认为数据类型仅是定义一个对象的类型。在 Ada 里,数据类型可以自己创建,它的相关运算符也可以自己定义,同时又有数据类型属性这项特性,具有相当大的灵活性。

2024-12-27 15:05:49 572

原创 Ada程序设计-第1章 Ada 简介

Ada 语言最初设计是为了构建长周期的、高度可靠的软件系统。它提供了一系列功能来定义相关的数据类型(type)、对象(object)和操作(operation)的程序包(package)。程序包可以被参数化,数据类型可以被扩展以支持可重用库的构建。操作既可以使用方便的顺序控制结构,通过子程序(subprogram)来实现,也可以通过包含并发线程同步控制的入口(entry)来实现。Ada 也支持单独编译(separate compilation),在物理层上支持模块性。

2024-12-27 11:43:46 691

原创 密码学相关知识

密码学相关知识

2024-12-03 15:36:41 563

原创 C++11新特性:动态内存管理类

某些类需要在运行时分配可变大小的内存空间。 这种类通常可以(并且如果它们确实可以的话,一般应该)使用标准库容器来保存它们的数据。

2024-10-28 23:06:49 633

原创 C++11新特性:智能指针

C++中三种智能指针

2024-10-26 00:32:15 689 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除