首页 话题 小组 问答 好文 用户 我的社区 域名交易 唠叨
C/C++/C#

C/C++/C#

202071 帖子 7 成员
创建于 2025-05-20 组长:啊龙
本小组主要为进行C/C++技术交流而开设的技术论坛,社区版主及管理员在此分享学习资源供社区学员进行学习、交流、提问及解答问题。对C/C++感兴趣的朋友可随时关注本版块。

  • 常量和变量都是用来存储数据的容器,在定义时都需要指明数据类型,它们唯一的区别是:变量(Variable)中所存放的值是允许改变的,而常量(Constant)中存放的值不允许改变。上节《C变量》中已经讲...
    风轻y 发表于 192 天前
    0
    67
  • 变量(Variable)是 C 编程中不可缺失的内容,使用变量可以更容易地完成程序的编写。变量可以理解为存放数据的容器,并且在将值存放到变量中时还要为变量指定数据类型。变量和常量是相对的:变量是指所存...
    风轻y 发表于 192 天前
    0
    66
  • 数据类型主要用于指明变量和常量存储值的类型,C 语言是一种强类型语言,要求每个变量都必须指定数据类型。C 语言的数据类型分为值类型和引用类型。值类型包括整型、浮点型、字符型、布尔型、枚举型等;引用类型...
    风轻y 发表于 192 天前
    0
    130
  • C 语言是在 C、C++ 的基础上发展而来的,因此在语法形式上有些类似。掌握 C 的基本语法是学好 C 语言的前提。C语言是一种强类型语言,要求每个变量都必须指定数据类型。任何一个程序都离不开选择语句...
    风轻y 发表于 192 天前
    0
    114
  • 了解控制台应用程序通常是认识 C 应用程序的第一步,它是一个在类似于 DOS 的界面中输入与输出的程序,是学习 C 程序的基本语法最方便的程序。接下来我们介绍一下如何创建控制台应用程序。创建控制台应用...
    风轻y 发表于 192 天前
    0
    129
  • .NET Framework 是一个可以快速开发、部署网站服务及应用程序的开回发平台,是 Windows 中的一个组件,包括公共语言运行时(Common Language Runtime, CLR)虚...
    风轻y 发表于 192 天前
    0
    65
  • C 语言是微软推出的一款面向对象的编程语言,凭借其通用的语法和便捷的使用方法受到了很多企业和开发人员的青睐。C 语言具备了面向对象语言的特征,即封装、继承、多态,并且添加了事件和委托,增强了编程的灵活...
    风轻y 发表于 192 天前
    0
    73
  • includes() 算法可以比较两个元素的集合,如果第一个集合中的全部元素都来自第二个集合,它会返回 true。如果第二个集合是空的集合,它也返回 true。下面是一些示例:std::set wor...
    风轻y 发表于 192 天前
    0
    56
  • set_difference() 算法可以创建两个集合的差集,它也有两个版本的函数并且参数集和 set_union() 相同。下面是一个对降序 set 容器使用这个算法的示例:std::set wor...
    风轻y 发表于 192 天前
    0
    36
  • 除了会创建两个集合的交集而不是并集之外,set_intersection() 算法的用法和 set_union() 相同。有两个版本的 set_intersection(),它们和 set_union...
    风轻y 发表于 192 天前
    0
    64
  • 第一个版本的 set_union() 函数模板实现了集合的并集运算,它需要 5 个参数:两个迭代器用来指定左操作数的集合范围,另两个迭代器用来作为右操作数的集合范围,还有一个迭代器用来指向结果集合的存...
    风轻y 发表于 192 天前
    0
    47
  • 调用unordered_set容器的成员函数clear()可以删除它的全部元素。成员函数erase()可以删除容器中和传入参数的哈希值相同的元素。另一个版本的erase()函数可以删除迭代器参数指向的...
    风轻y 发表于 192 天前
    0
    55
  • 调用 unordered_set 的 find() 会返回一个迭代器。这个迭代器指向和参数哈希值匹配的元素,如果没有匹配的元素,会返回这个容器的结束迭代器。例如:std::pair person {&...
    风轻y 发表于 192 天前
    0
    49
  • 成员函数 insert() 可以插入作为参数传入的单个元素。在这种情况下,它会返回一个 pair 对象,这个 pair 对象包含一个迭代器,以及一个附加的布尔值用来说明插入是否成功。如果元素被插入,返...
    风轻y 发表于 192 天前
    0
    45
  • unordered_set 容器类型的模板定义在 unordered_set 头文件中。unordered_set 容器提供了和 unordered_map 相似的能力,但 unordered_set...
    风轻y 发表于 192 天前
    0
    54
  • multiset 容器就像 set 容器,但它可以保存重复的元素。这意味我们总可以插入元素,当然必须是可接受的元素类型。默认用 less 来比较元素,但也可以指定不同的比较函数。在元素等价时,它必须返...
    风轻y 发表于 192 天前
    0
    193
  • 如果改变对象,可能会改变 set 中对象指针的顺序,所以指针的比较函数不能和对象有关。大多数时候,我们并不在意元素在 set 中的顺序,而是在意容器中是否有这个元素。在这种情况下,就可以使用一个适用于...
    风轻y 发表于 192 天前
    0
    57
  • set 容器的成员返回的迭代器都是双向迭代器。这些迭代器的类型的别名定义在 set 模板中,可以从 set 中得到类型别名有 iterator、reverse_iterator、const_itera...
    风轻y 发表于 192 天前
    0
    57
  • 是时候了解一下 set 容器的用法了。我们把 vector、set 和 map 容器组合在一起来创建一个示例,并且会介绍一种新的有用算法。在这个示例中,你会将学习不同学科的学生分配到一组。每个学生都必...
    风轻y 发表于 192 天前
    0
    85
  • set 中没有实现成员函数 at(),也没有实现 operator() 。除了这些操作外,set 容器提供 map 容器所提供的大部分操作。可以使用 insert()、emplace()、emplac...
    风轻y 发表于 192 天前
    0
    42
  • 通常,set 容器内部元素的组织方式和 map 相同,都是平衡二叉树。请考虑下面这个 set 容器的定义,可以用初始化列表来初始化 set 容器:std::set numbers {8, 7, 6, ...
    风轻y 发表于 192 天前
    0
    73
  • 从本节开始,将介绍 set (集合)的使用。集合是一个简单直观的数学概念,即具有共同特征的事物的集合。集合在 STL 中有两个概念,它们都涉及一系列的数学思想。集合可以是由两个迭代器定义的范围内的一系...
    风轻y 发表于 192 天前
    0
    57
  • unordered_multimap 是一个允许有重复键的无序 map。因此,它支持的操作实际上和 unordered_map 容器是相同的,为了处理多个重复键所做的添加和更改除外。后面会对这些差别做...
    风轻y 发表于 192 天前
    0
    55
  • 可以调用 unordered_map 的成员函数 erase() 来移除元素。参数可以是标识元素的一个键或是指向它的一个迭代器。当参数是键时,erase() 会返回一个整数,它是移除元素的个数,所以 ...
    风轻y 发表于 192 天前
    0
    55
  • 对于 unordered_map,可以在下标运算符中使用键来获取它所对应对象的引用。例如:people 22; //Set Jim's age to 22; people people;...
    风轻y 发表于 192 天前
    0
    58
  • unordered_map 容器的成员函数 insert() 提供的能力和 map 谷器的这个函数相同。可以通过复制或移动来插入一个元素,可以使用也可以不使用提示符来指明插入的位置。可以插入初始化列表...
    风轻y 发表于 192 天前
    0
    97
  • 生成 unordered_map 容器和生成 map 一样简单,只要可以用 hash 的实例哈希 k 类型的键,而且必须能够用 运算符来比较键。下面展示了如何定义和初始化 unordered_map...
    风轻y 发表于 192 天前
    0
    56
  • unordered_map 包含的是有唯一键的键/值对元素。容器中的元素不是有序的。元素的位置由键的哈希值确定,因而必须有一个适用于键类型的哈希函数。如果用类对象作为键,需要为它定义一个实现了哈希函数...
    风轻y 发表于 192 天前
    0
    63
  • 如果在容器中保存对象及其关联的键,并且不用键来决定 键/对象 对的顺序,那就必须对键值釆用其他方式来确定元素在内存中的位置。如果使用像 string 这样的对象作为键,就会遇到一些问题,可能的变量的数...
    风轻y 发表于 192 天前
    0
    61
  • 对于为什么要改变 map 或 multimap 的比较函数,可能想用降序排列的元素来代替默认升序排列的元素;或者键需要使用的比较函数和直接的小于或大于运算符不同。例如,如果键是指针的话,就需要使用这种...
    风轻y 发表于 192 天前
    0
    180
站长交流