![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++基础
C++学习
_hys
这个作者很懒,什么都没留下…
展开
-
C++11 unordered_set与unordered_map使用结构体
#include <iostream>#include <cstdio>#include <set>#include <unordered_set>#include <unordered_map>using namespace std;struct Node { Node() {} Node(int _x, int _y):x(_x), y(_y) {} int x, y; bool operat...原创 2022-01-11 17:23:26 · 1361 阅读 · 0 评论 -
extern关键字 与 extern “C“ {}
1、extern关键字作用在变量与函数用法一个c文件需要调用另一个c文件里的变量或者函数,而不能从.h文件中调用变量。详见下文1 extern int a = 5与int a = 5意义是一样的,都是定义。而extern int a;是声明。但会产生一条警告。详见以下链接 下文2 对于函数而言,和引用变量是一样的,如果需要调用其他.c文件中的函数,在文件中的函数声明前加extern即可,不加extern而直接声明函数也可以,因为声明全局函数默认前面带有extern。详见以下链接 下文3 如..原创 2022-01-10 18:55:17 · 341 阅读 · 0 评论 -
C/C++ 自定义头文件
头文件由三部分内容组成头文件开头处的版权和版本声明。 预处理块。 函数和类结构声明等。头文件的作用 通过头文件来调用库功能。 头文件能加强类型安全检查。 头文件主要写什么?头文件一般写函数原型声明、结构体声明、类声明。如何自定义头文件1.首先建头文件是为了声明cpp文件中的函数,以及包括宏定义。建立头文件要有对应的cpp文件。我简单地写了一个cpp文件,里面有一个函数。#include<iostream>#include "HeadFile.h"原创 2022-01-10 17:14:10 · 5590 阅读 · 0 评论 -
C语言整型类型输出补码
数值在计算机表示为补码表示,所以在C语言里负数也是以补码存储的 符号位为1表示负数,为0表示正数 负数反码 = 负数原码符号位不变,其他位取反 负数的补码 = 负数反码+1 负数的原码 = 负数的补码的补码 10000000默认为最小值,00000000为0,01111111为最大值 long long 最大值为2^63-1((1LL<<63)-1),最小值为-2^63(1LL<<63)。#include<stdio.h>#include<stri原创 2021-10-04 13:06:53 · 3343 阅读 · 0 评论 -
C++在set加入类比较器后,使用set.count(elem)方法出错
解决方案:#include<iostream>#include<set>using namespace std;struct classCompare { bool operator()(const string& a, const string& b) const { //加入const即可解决 if(!(a[a.size()-1] == '\\' ^ b[b.size()-1] == '\\')){ return a <原创 2021-10-04 00:51:16 · 266 阅读 · 0 评论 -
C++结构体排序demo
结构为使用方法为原创 2021-07-19 18:32:21 · 83 阅读 · 0 评论 -
STL优先队列
基本操作:empty() 如果队列为空,则返回真pop() 删除对顶元素,删除第一个元素push() 加入一个元素size() 返回优先队列中拥有的元素个数top() 返回优先队列对顶元素,返回优先队列中有最高优先级的元素在默认的优先队列中,优先级高的先出队。在默认的int型中先出队的为较大的数。头文件:#include 声明方式:1、普通方法:priority_queue q;原创 2021-07-19 18:39:16 · 51 阅读 · 0 评论 -
让priority_queue实现小根堆三种方法
作者:自为风月马前卒个人博客http://attack204.com//出处:http://zwfymqz.cnblogs.com/本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。...转载 2020-11-26 22:58:28 · 524 阅读 · 0 评论 -
C++运算符重载总结
C++ 规定,运算符重载不改变运算符的优先级。以下运算符不能被重载:. 、.*、:: 、? :、sizeof。重载运算符()、[]、->、或者赋值运算符=时,只能将它们重载为成员函数,不能重载为全局函数。返回“ 值 ”和返回“ 引用 ”的不同点:函数返回值时会产生一个临时变量作为函数返回值的副本,而返回引用时不会产生值的副本。c++重载运算符使用const的原因:1.参数里面那个const是为了不对原来的对象修改,另外这里用引用避免了对实参的拷贝,提高效率。2.函数加上const后缀表示原创 2020-07-12 22:40:40 · 128 阅读 · 0 评论 -
C++类与对象总结
1.类的成员有成员变量和成员函数两种。2.成员函数之间可以互相调用,成员函数内部可以访问成员变量。3.私有成员只能在类的成员函数内部访问。默认情况下,class 类的成员是私有的,struct 类的成员是公有的。4.可以用“对象名.成员名”、“引用名.成员名”、“对象指针->成员名”的方法访问对象的成员变量或调用成员函数。成员函数被调用时,可以用上述三种方法指定函数是作用在哪个对象上的。对象所占用的存储空间的大小等于各成员变量所占用的存储空间的大小之和(如果不考虑成员变量对齐问题的话)。定.原创 2020-07-09 21:29:39 · 244 阅读 · 0 评论