自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Lion_Long的博客

一个热爱分享高新技术开发知识的博主

  • 博客(419)
  • 收藏
  • 关注

原创 C++ STL 算法的重要性:提高代码可读性和正确性的强大工具

STL 算法是一套强大的工具,可以提高代码的可读性和正确性。了解 STL 算法至关重要,因为它们可以极大地简化日常的编程任务。这篇文章将介绍如何使用 STL 算法,并解释它们能带来的一些关键优势。通过学习 STL 算法,开发者可以编写更加表达性和健壮的代码。学习所有 STL 算法需要时间和精力,但这是一项非常有益的投资。这些算法提供了强大的功能,可以显著提高代码的质量和表达能力。虽然 STL 算法库很庞大,包含了各种各样的算法,但这并不意味着需要全部掌握。相反,可以从最常用和最基础的算法开始学习,如。

2024-05-23 09:00:00 411

原创 C++ 关联容器:如何移除重复元素?一文即刻掌握

移除重复元素只有对包含“multi”的四种关联容器有意义。因为其他容器永远没有重复元素。对于multimap和,重复元素的概念可以有多种含义:两个元素可能具有相同的键,也可能具有相同的键和值。由于具有相同键的元素在容器中没有特定的顺序,无法在O(n)时间内移除 (键,值) 重复元素,因为它们可能不会相邻。因此,这里暂时不会考虑这种情况。这里只关注键来确定两个元素是否为重复元素。对于集合,由于键和值本身就是一个,所以没有歧义。注意,在 C++11 之前,是不知道最终保留哪个重复元素的。

2024-05-22 09:00:00 1080

原创 5分钟学会如何高效移除C++关联容器中的元素?

本文详细介绍了 C++ 关联容器中移除元素的多种方法,包括移除指定位置的元素、移除与特定键值等价的元素以及移除满足特定条件的元素。文章深入分析了关联容器的内部结构,解释了为何不能直接使用 std::remove_if 方法移除满足特定条件的元素,并提供了安全高效的 erase_if 函数实现。文章还强调了迭代器失效问题,并给出了避免未定义行为的正确迭代器操作方式。通过本文,读者可以掌握 C++ 关联容器中移除元素的各种技巧,并能够安全高效地操作关联容器。

2024-05-20 09:00:00 905 1

原创 轻松解决C++ vector中指针删除难题!

这篇文章深入探讨了在C++中处理指针的向量时可能遇到的挑战,并提供了解决这些挑战的实用技巧。首先,它介绍了使用std::unique_ptr等智能指针来替代拥有原始指针的重要性,并展示了如何通过std::remove_if和std::erase等STL算法轻松处理智能指针。然后,文章着重讨论了在处理拥有原始指针的向量时可能出现的内存管理问题,以及如何避免悬空指针和内存泄漏。通过深入分析和实际示例,读者将学会如何更加安全和高效地管理指针,从而使他们的C++代码更加健壮和易于维护。

2024-05-19 09:00:00 869 1

原创 4招轻松从C++序列容器中移除元素,你学会了吗?

本文讨论从集合中删除元素的STL算法。从C++集合中删除一个元素可能不复杂,也可能有点复杂。删除元素的方法在序列容器和关联容器之间是非常不同的。在序列容器中,vector和string是最常用的。但这里也会介绍deque和list以供全面了解,尽管在一般情况下可能不会使用它们。在给定位置(或在两个给定位置之间)删除元素;删除等于某个值的元素;删除满足某个谓词的元素以及删除重复项。下面来看看如何在STL序列容器中实现这四种命令。这就是C++中从序列容器中删除元素的方法。

2024-05-18 09:00:00 534

原创 了解C++中STL的堆操作:构建、拆解和排序 堆(Heap)

本文将介绍如何在C++中利用STL(标准模板库)进行堆(Heap)操作,包括构建、拆解和排序堆的过程。首先,我们将对堆的概念进行简要介绍,然后重点讨论三个关键的STL函数:std::push_heap、std::pop_heap和std::sort_heap。通过实例和代码演示,读者将了解如何使用这些函数在C++中轻松地操作堆数据结构,从而加深对堆操作的理解并提升编程技能。

2024-05-14 09:00:00 245 2

原创 深入理解C++中的堆:从基本概念到实际应用

堆是一种具有树形结构的数据结构,它遵循堆属性,即:每个节点必须小于其每个子节点。“堆”这个名字可能来自于这样一个事实:如果堆放一堆东西并希望它能保持平衡,人类更愿意把大的东西放在底部,小的东西放在顶部:请注意,这与包含动态分配对象的内存区域中的堆完全无关(与栈相对,栈也是一种数据结构的名称)。堆的一个最重要的特性是,其最小元素位于其根部,易于访问。在堆中,每个节点理论上可以有任意数量的子节点。但在STL中,堆的节点有两个子节点,因此在本文中将用堆来指代二叉堆。

2024-05-13 09:00:00 897 1

原创 轻松拆分C++字符串:标准、Boost和范围的比较分析

这篇文章探讨了在C++中进行字符串拆分的三种主要方法:使用标准库、Boost库以及范围。通过比较这三种方法的优缺点,读者可以了解到每种方法的适用场景以及性能特点。从最基础的流迭代器到Boost库的便利,再到未来可能的范围操作,本文全面剖析了这一常见任务的多种解决方案。通过深入了解每种方法的实现原理和使用技巧,读者可以在实际编程中选择最适合自己需求的方法,提高代码效率和可维护性。

2024-05-12 09:00:00 813 1

原创 STL算法移动范围:简单、高效的集合移动方法

已经介绍过使用STL算法在范围(range)上实现复杂操作的各种方法。本文将重点介绍如何在STL中移动集合中的元素,以及一些常用的移动算法的实现和用法。包括批量移动元素、子范围变换和交换元素等。移动集合中的元素在实际应用中非常常见,对于提高程序效率和减少资源占用都具有重要意义。通过合理选择移动算法,可以更加高效地操作集合中的数据,实现更灵活的功能。本文详细介绍了在STL中批量移动集合中的多个元素的几种常见算法,包括std::copystd::move和。

2024-05-10 09:00:00 721 2

原创 超酷STL操作:让你轻松实现集合元素的重新排列

STL允许在集合上做很多事情,其中之一就是对集合内的元素重新排序。也可以称为对集合执行排列。在集合中移动元素通常需要编写大量复杂的代码,涉及循环和迭代器。而这也许是STL产生最令人瞩目改进的领域,因为它将这些复杂的操作封装在有意义的接口里面。Lexicographical 排列循环排列随机排列反向检查排列还有更多的排列方式。在这里,是否涵盖了STL允许我们更改集合元素顺序的所有方法?没有!还有其他类型的排列,它们有足够的深度,值得单独写一篇文章。

2024-05-07 09:00:00 680 2

原创 std::accumulate算法知识:一个看似简单实则无所不能的算法

如果有一个算法可以做各种各样的事情,那一定是。重要的是要知道怎么使用它,以及什么时候不使用它。关于首先要知道的是它的头文件是,不像其他算法的头文件在。用于汇总一个范围。即接受一个元素集合,并且只返回一个值。它可以用于实现各种算法,但同时也要谨慎使用,否则会造成代码难以理解。是一把有力的算法函数,但使用时需要明确它的原理和适用场景。它擅长于将一个范围汇总为单一值,但不擅长于对每个元素进行函数应用并收集结果。使用时要时刻谨记这一原则,以确保代码清晰易懂,体现算法的本意。

2024-05-01 09:00:00 1800 3

原创 掌握 STL 中的分区技术:std::partition 优化 C++ 代码性能

对集合进行分区(Partitioning )就是重新排列它,使得满足给定谓词的元素移到最前面,而不满足该谓词的元素移到其后面。第一个不满足谓词的元素称为分区点。这也是满足谓词的子范围的结束点:分区是一种常见的数据操作,它将一个集合或范围中的元素按照某个条件重新排列,使得满足给定条件的元素都聚集在前面,而不满足条件的元素聚集在后面。这样做的目的是为了后续的其他操作提供便利,比如查找、删除等。分区的关键点在于确定一个"分区点",它是第一个不满足给定条件的元素的位置。

2024-04-30 09:00:00 1003 2

原创 从完全排序到部分排序:C++标准库STL排序函数大全

C++标准库(STL)提供了丰富的排序算法供开发者使用。除了常见的全范围排序外,STL还支持对部分范围进行排序、检查排序状态等操作。同时Boost库也提供了一些高效的排序算法供选择。本文将介绍STL和Boost中常用的排序相关函数及其使用场景。一起来看看STL和Boost在这方面能做些什么。C++标准库提供了多种灵活的排序算法,可以满足各种场景下的排序需求。对于大型集合,Boost的spreadsort也是一个不错的选择。

2024-04-29 09:00:00 1009 2

原创 揭示C++中看似简单的 min 和 max 函数隐藏的细节

最小值和最大值是非常简单的函数,没有太多可说的,真的是这样吗?最小值和最大值是非常基本的概念,但也可能存在一些细节上的问题和需要注意的地方。本文将深入探讨C++标准库里的std::minstd::max等相关函数的用法和注意事项。那么,读完这篇文章,还认为最小值和最大值真的那么简单吗?最小值和最大值函数看似简单,但在实际使用中还是需要注意一些细节问题。通过深入了解C++标准库中相关函数的特性和注意事项,可以更好地掌握它们的使用方法,提高编程效率和代码质量。

2024-04-28 09:00:00 1544 3

原创 简化代码,高效填充:深入了解STL的填充算法填充范围(range )或容器

重点讨论如何使用STL填充范围(range )或容器。本文深入探讨了STL的填充算法,重点关注了填充范围(range)或容器的操作。首先介绍了std::fill和两个算法,它们分别用于将范围或未初始化的内存中的元素填充为指定的值。接着介绍了和std::iota两个算法,前者用于通过可调用函数生成随机值填充范围,后者用于生成递增序列填充范围。此外,还介绍了*_n系列算法,如和,它们用于快速填充指定数量的元素。最后,讨论了容器自身的填充方法,包括构造函数和赋值方法。

2024-04-27 09:00:00 681 3

原创 玩转STL的范围谓词:轻松应对复杂数据逻辑

本文介绍了如何使用STL的范围谓词来轻松应对复杂的数据逻辑。范围谓词是STL中强大而灵活的工具,可以帮助开发人员处理各种条件和筛选要素,以提高代码的可读性和性能。但它们有一个共同点:它们返回一个或多个范围的布尔特征。本文详细介绍了STL的范围谓词的应用和优势。范围谓词是处理复杂数据逻辑的有力工具,通过定义和使用谓词函数可以轻松地筛选和操作数据集合。结合STL的算法,范围谓词可以帮助编写简洁、高效的代码,提高开发效率和代码可读性。

2024-04-26 11:45:48 868 4

原创 C++的std::transform算法函数,一行代码解决数据转换!

本文介绍了C++中的std::transform算法函数,这是一个非常有用的函数,可以帮助我们快速实现数据转换。通过一行代码的简洁实现,我们可以轻松地将一个容器中的数据转换为另一种形式,无论是应用某种运算、转换数据类型,还是执行其他自定义的操作。本文将详细解释std::transform函数的使用方法和参数,以及如何结合lambda表达式来实现更复杂的转换逻辑。通过学习本文,读者将能够更加高效、优雅地处理数据转换任务,提高编程效率。

2024-04-25 09:00:00 760 4

原创 C++中的五种高级初始化技术:从reserve到piecewise_construct等

本文探讨了初始化C++代码的各种技术。深入研究了现代C++特性的复杂性,包括reserve和emplace_back的效率、constinit的准确性和lambda初始化的灵活性。此外,还研究了piecewise 和forward_as_tuple的细微差别。这些高级技术展示了c++语言的发展和强大,并为开发人员提供了编写更具表现力、更高效和更通用的代码的能力。

2024-04-24 09:00:00 854 3

原创 掌握C++17的“武器“:Boost库带来的新特性

讨论Boost库在C++17中的其他应用,如文件系统库std::filesystem的使用、搜索算法(如Boyer-Moore和Boyer-Moore Horspool)的使用方法,以及数学函数(如clamp、gcd和lcm)的应用。通过深入了解Boost库在C++17中的新特性,读者将能够掌握更多有力的工具,提升其C++编程技能。

2024-04-23 09:00:00 681 3

原创 Boost经验在C++17中的体现 :熟悉的特性在新标准中的应用

本文探讨了在C++17标准中,许多熟悉的特性是如何受益于著名的Boost库的经验。Boost库为C++提供了许多方便的算法、类型和特性,其中许多元素已成为C++标准库的一部分。通过将Boost的特性迁移至C++标准库,我们可以编写更加流畅的C++代码。本文介绍了一些在Boost中常用的特性,如词汇类型(Vocabulary Types),包括std::optional、std::variant和std::any的应用。这些特性使得代码更具表现力和灵活性。

2024-04-22 09:00:00 1503 2

原创 探索C++标准库中的隐藏宝藏:强大而鲜为人知的搜索算法

本文将介绍一些鲜为人知但非常有用的算法。这些算法可以帮助高效地查找子序列或特定值的位置。本文详细解释了每个算法的用法、参数和返回值,并提供了相应的示例代码。通过学习和掌握这些隐藏宝藏算法,可以更加灵活和高效地处理各种搜索需求。以下所有函数都不假设它们操作的元素是有序的,因此它们使用operator==(或提供的自定义比较器)来执行比较。以上就是使用STL进行搜索的内容。C++标准库中的搜索算法提供了强大而高效的功能,但很多开发者可能对它们不太熟悉。本文介绍了和这三个宝藏级算法。

2024-04-21 09:00:00 1657 4

原创 STL容器搜索:当直接访问STL容器时,如何执行有效和正确的搜索?

本文探讨了在直接访问STL容器时如何执行有效和正确的搜索。我们深入研究了STL容器的内部机制,并揭示了一些高效的搜索技巧。首先,我们介绍了直接访问STL容器的优势,包括快速访问元素和灵活性。接着,我们详细讨论了使用迭代器和成员函数进行搜索的方法,包括如何使用算法库提供的函数进行查找。我们还探讨了针对不同类型的STL容器选择最佳搜索方法的考虑因素。最后,我们总结了执行有效和正确搜索的关键要点,帮助读者在实际编程中避免常见的错误和陷阱。

2024-04-20 09:00:00 938 3

原创 如何在C++的STL中巧妙运用std::find实现高效查找

本文章旨在涵盖所有在STL中(甚至稍微超出)关于搜索的知识,尽管在集合中搜索某些东西的需求是一个很容易理解的概念,但是要彻底地涵盖这个主题,还有很多内容要讲。本文主要介绍在元素范围上执行搜索的经典STL算法,后面会继续讲解当直接访问STL容器时,如何执行有效和正确的搜索,而不是简单的范围;以及介绍的绝大多数开发人员不知道但很有用的算法。这篇文章展示了如何在一个范围内搜索。这里将坚持使用标准版本的STL,并考虑由2个迭代器表示的范围。

2024-04-19 09:00:00 1112 1

原创 每天一个关于STL的知识:集合(set)算法,你了解了吗 ?

集合算法是一组用于处理集合数据的强大工具,它们能够帮助我们取两个集合的部分数据、比较两个集合、合并两个集合等操作。通过学习集合算法,我们可以更好地理解和处理集合数据,掌握数据处理的核心技巧。本文将逐一介绍几个常用的集合算法,并解释它们的原理和用法。无论你是初学者还是有一定经验的开发者,相信本文都能为你提供有益的知识和启发,让你在STL的集合算法中更加游刃有余。让我们一起开始这段关于集合算法的学习之旅吧!

2024-04-18 09:00:00 768 3

原创 从C++ 14到C++ 17:理解聚合初始化是如何工作的

本文详细介绍了C++ 17中的扩展聚合初始化特性,该特性使得初始化聚合类型的对象变得更加简洁和灵活。通过对比C++ 14中的代码,发现在C++ 17中引入的扩展聚合初始化语法可以大大简化代码,并提供了更好的可读性和可维护性。也指出了一些在C++ 17中代码停止编译的情况,并解释了其中的原因。通过深入理解扩展聚合初始化的语法和语义,可以在自己的项目中充分利用这一特性,提升代码的效率和可靠性。

2024-04-17 09:00:00 968 2

原创 2048天的创作旅程:坚持与成长

创作不仅仅是将自己的想法呈现给他人,它也是一种自我发现和学习的过程。通过研究和撰写文章,不断深入探索各个领域的知识,拓宽自己的视野。每篇作品都是对特定主题的深入思考和调研,能够从不同的角度审视问题,并从中获得新的启示和启发。创作激发了我的好奇心和求知欲,让我对世界保持着持续的探索和学习态度。

2024-04-16 08:30:00 601 3

原创 C++进阶技巧:如何在同一对象中存储左值或右值

variant为c++中跟踪左值或右值的经典问题提供了一种非常适合的解决方案。这种技术的代码具有表现力,因为std::variant允许表达与我们的意图非常接近的东西:“根据上下文,对象可以是引用或值”。在C++ 17和std::variant之前,解决这个问题很棘手,导致代码难以正确编写。随着语言的发展,标准库变得越来越强大,可以用越来越多的表达性代码来表达我们的意图。

2024-04-15 09:00:00 630 3

原创 3个令人惊叹的C++17功能,让您的代码变得更简洁

C++17 为 C++ 语言带来了许多功能。本文深入研究其中的三个,它们有助于使编码更容易、更简洁、更直观和正确。本文将从结构化绑定开始。结构化绑定适用于许多情况,本文中将介绍几种情况可以使代码更简洁、更简单。接着介绍模板参数推导,它允许删除习惯于键入的模板参数。最后介绍使用“选择初始化”使我们能够更好地控制对象范围,并允许定义它们所属的值。已经了解了结构化绑定如何允许单个声明声明一个或多个局部变量,这些变量可以具有不同的类型,并且其类型始终使用单个auto,它们可以从复合类型中分配。

2024-04-14 09:00:00 1438 19

原创 超越传统Lambda函数:深入解析Out-of-line Lambdas的奇妙之处

本文将深入探讨Out-of-line Lambdas的概念和其在函数计算领域的奇妙之处。传统的Lambda函数已经成为云计算中的重要工具,但Out-of-line Lambdas则提供了一种更灵活和强大的方式来处理函数计算。我们将详细介绍Out-of-line Lambdas的定义和原理,并探讨其与传统Lambda函数的区别。此外,我们还将深入研究Out-of-line Lambdas的应用场景,包括大规模数据处理、机器学习和实时流处理等。

2024-04-13 22:20:35 824 2

原创 掌握现代 C++:Lambda 在 C++14、C++17 和 C++20 中的演变

本文讨论了lambda从C++14到C++20的主要改进。但也还有更多没有总结进来。这些主要功能伴随着许多小特性使 lambda 代码更易于编写。深入研究 lambda 是更好地了解 C++ 语言的绝佳机会,这是一个值得投入的时间。

2024-04-13 09:00:00 901 4

原创 深度解读C++17中的std::string_view:解锁字符串处理的新境界

std::string_view是C++17引入的一个非拥有的字符串视图类型,它提供了一种轻量级的方式来访问现有字符串数据。std::string_view通过避免字符串复制和内存分配,它可以显著提高程序性能,并提供方便的字符串处理能力。但是,在使用过程中需要注意正确管理原始字符串的生命周期,以确保使用的字符串数据有效和安全。

2024-04-11 09:00:00 903 4

原创 深入探索Linux内存管理:初学者指南

Linux 内存管理是一个非常广泛的主题,无法在一篇文章中涵盖所有领域。本文主要提供主要领域的概述,并帮助了解与 Linux 内存管理相关的重要术语。计算机的核心部分是 CPU,RAM 是 CPU 的前端门户,进入 CPU 的所有内容都将通过 RAM。例如,如果有一个正在加载的进程,则该进程将首先加载到 RAM 中,CPU 将从 RAM 获取进程数据。但为了使其更快,CPU 具有一级、二级、三级缓存。

2024-04-10 13:10:32 946 3

原创 深入解析template,掌握C++模板的精髓!

模板是 C++ 中最强大和最广泛使用的方法之一,允许我们编写通用程序。它允许我们定义泛型函数和类。它促进了泛型编程,不需要为不同的参数编写相同的函数或方法。可以将模板定义为创建泛型类和函数的蓝图。C++ 模板背后的想法很简单。将数据类型作为参数传递,不需要为不同的数据类型编写相同的代码。在 C++ 的模板中使用两个关键字——template和typename来实现泛型编程。注意:typename 关键字始终可以替换为class关键字。像迭代器这样的库容器。

2024-04-08 22:57:38 1227 3

原创 在 C++ 中轻松实现字符串与字符数组的相互转换

本文重点介绍在 C++ 中将字符串转换为 char 数组和将 char 数组转换为字符串的不同方法。

2024-04-08 08:30:00 1376 1

原创 Kubernetes集群设计和设置的高级技巧:10个最佳实践,打造高性能和高可用性

这些是一些 kubernetes 设计最佳实践,在设置 kubernetes 集群时经常被遗漏。在实施 kubernetes 时缺少这些方面可能会导致整个集群出现问题,并可能对业务造成损害。这不仅仅是使用自动化创建 Kubernetes 集群,还需要考虑 Kubernetes 集群生命周期管理,并相应地规划自动化工作。理想情况下,解决方案/技术架构师在设计集群架构时应将所有提到的项目(可能有很多但值得考虑)作为清单,以确保在 IaaC 开发期间实现它们。

2024-04-07 08:30:00 843 1

原创 Kubernetes 高可用性入门:初学者指南

Kubernetes 高可用性对于确保应用程序始终可用至关重要。通过了解 Kubernetes 的核心高可用性组件和最佳实践,初学者可以构建高可用且弹性的 Kubernetes 集群。本文提供了 Kubernetes 高可用性的全面概述,是初学者入门并开始使用 Kubernetes 的宝贵资源。

2024-04-06 09:00:00 714 1

原创 【解读Kubernetes架构】全面指南,带你掌握Kubernetes的设计原理与构成!

本文关于 Kubernetes 架构的综合指南旨在通过插图详细解释每个 Kubernetes 组件。了解 Kubernetes 的架构。掌握 Kubernetes 的基本概念。了解 Kubernetes 架构组件。探索连接这些组件的工作流。以下 Kubernetes 架构图显示了 Kubernetes 集群的所有组件以及外部系统如何连接到 Kubernetes 集群。关于 Kubernetes,应该了解的第一件事是,它是一个分布式系统。即它有多个组件分布在网络上的不同服务器上。

2024-04-05 09:00:00 1193 14

原创 C++文件流:通过ofstream和ifstream轻松实现文件读写

C++文件流是用于进行文件读写操作的工具,它提供了一种能够简单、高效地与外部文件进行交互的方式。C++中文件流主要通过ofstream和ifstream来实现对文件的写入和读取。ofstream(output file stream)用于写入文件,可以创建、打开并写入文件内容。ifstream(input file stream)用于读取文件内容,可以打开并读取文件中的数据。文件流操作可以是文本模式的,也可以是二进制模式的,允许以不同的方式对文件进行读取和写入。

2024-03-28 09:00:00 2709 3

原创 神秘解密:stressapptest源码Logger日志操作深度剖析

stressapptest 是一个用于测试系统稳定性和可靠性的开源应用程序。它通过模拟在系统上运行的压力,并检查系统在这种严格条件下的稳定性。stressapptest 是一个非常有用的工具,可以在不同环境中对系统进行稳定性测试和故障排除。分析了Logger类的一些关键方法和功能,包括启动和停止日志记录线程、日志队列操作、时间戳记录、日志行格式化、以及专门的日志记录线程逻辑。Logger类提供了多线程环境下的高效日志记录功能,并且在设计上考虑了线程同步、异常处理以及内存管理等方面。

2024-03-25 09:00:00 1094 6

原创 深入了解C语言运算符优先级:让你的代码更精准!

运算符是用来执行特定操作的符号或关键字。在C语言中,运算符可以用于执行各种数学运算、逻辑运算和位运算等。例如,加法运算符"“用于执行加法操作,等号”"用于赋值操作。表达式是由运算符和操作数组成的组合,它们通过运算符连接在一起并且产生一个数值结果。在C语言中,表达式可以包含各种运算符,例如算术运算符(+、-、*、/)、关系运算符(、==、!=)、逻辑运算符(&&、||、!)等。表达式的值可以是一个常量、变量或者函数调用的返回值。表达式和运算符的组合是构建算法和逻辑的基础。

2024-03-24 11:24:04 1027 3

C++/Win32/GDI+实现波浪球效果(详细源码和使用示例)

这是一个基于C++在win32上实现的波浪球效果。它使用GDI+进行图形绘制,支持指定签名、动态百分比显示以及特殊项目的PASS/FAIL显示。 对其封装成了一个类,并开放了相关参数可设置。 适合Windows api、VC项目、C++图形项目等。

2022-11-06

空空如也

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

TA关注的人

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