随笔分类 - c/c++
摘要:#include#include#include"unistd.h"#define REGS_FOREACH(_) _(X) _(Y)#define RUN_LOGIC X1 = !X && Y; \ Y1 = !X && !Y;#define ...
阅读全文
摘要:转自:Stephen Brennan's Blog 斯蒂芬 · 布伦南的博客 Tutorial - Write a Shell in C • Stephen Brennan Tutorial - Write a Shell in C 教程-用 c 语言编写 ...
阅读全文
摘要:vector::iterator unique(vector& a){ int t = 0; for(int i=0; i2->3->4->5->6 共6步第二组: 1->3->5->6 共4步 思路: 重复的高度不会跳第二次, 该题仅要求我们...
阅读全文
摘要:#include#include#includetypedef struct Node{ int data; struct Node* next;}N;//创建节点 N* MakeNode(int d){ N* node = (N*)malloc(sizeo...
阅读全文
摘要:PK赛 总时间限制: 1000ms 内存限制: 65535kB 描述 在一次学校的活动中,有一个老师和学生的PK。其中ai是教师的...
阅读全文
摘要: 目录 常用函数: 一.声明,初始化 二.访问 1.和数组相似 2.使用迭代器 注意: ★补充: 补充: 三.二维向量 四.内存管理使用 常用函数: front():返回当前vector容器中 起始元素的引用。 back():返回当前vector容器中末尾元素的引用。 begin():返回一个当前
阅读全文
摘要:1.编译器为class A{}生成的函数 1 class A 2 { 3 public: 4 A(); //缺省构造函数 5 A(const A&rhs); //拷贝构造函数 6 ~A(); //析构函数 7 A& operator=(const A&rhs); //赋值运算符 8 A* opera
阅读全文
摘要:在同一个类中定义的同名函数,若形式参数列表不同,则形成函数重载,此时系统将采用静态绑定方式确定函数代码,即系统按函数的最佳匹配规则确定函数代码。 派生类的函数与基类的函数同名,其他不完全相同,此时不论有无 virtual 关键字,在派生类中基类函数都将被隐藏。注意有 virtual 仅返回值类型不同
阅读全文
摘要:不能被继承的函数。不能被重写的函数。1)普通函数普通函数不属于成员函数,是不能被继承的。普通函数只能被重载,不能被重写,因此声明为虚函数没有意义。因为编译器会在编译时绑定函数。而多态体现在运行时绑定。通常通过基类指针指向子类对象实现多态。2)友元函数友元函数不属于类的成员函数,不能被继承。对于没有继
阅读全文
摘要:1:不能通过类名来调用类的非静态成员函数。 错误示范: class Member { public: void init() { } static void output() { } }; int main() { Member::init();//✖ Member::output();//✔ }
阅读全文
摘要:发生内存错误是件非常麻烦的事情。编译器不能自动发现这些错误,通常是在程序运行时才能捕捉到。而这些错误大多没有明显的症状,时隐时现,增加了改错的难度。有时用户怒气冲冲地把你找来,程序却没有发生任何问题,你一走,错误又发作了。 常见的内存错误及其对策如下: * 内存分配未成功,却使用了它。 编程新手常犯
阅读全文
摘要:转载自https://www.omegaxyz.com/2017/05/20/aboutippandppi/ 递增(++)和递减(–-)运算符为对象的加1和减1操作提供了简洁的书写形式。除此之外,这两个运算符还可以用于迭代器,因为很多迭代器本身不支持算术运算,所以此时递增和递减除了简介外还是必需的。
阅读全文
摘要:[Error] jump to case label [-fpermissive] 问题:C语言编程时,在switch case 结构中, 如果在case里定义变量就会出现这种编译错误:jump to case label [-fpermissive] 原因:编译器认为这种写法会错过变量的定义,因些
阅读全文
摘要:# C++ STL(Standard Templete Libiray)标准模板库 ## 一、STL构成 - 算法 - 容器 - 迭代器 ## 二、迭代器 迭代器的实质是一个指向容器元素的指针,是容器与算法之间的中介物 ## 三、算法 算法是实现容器相关功能的一些算法函数 ## ※四、容器(STL的
阅读全文
摘要:指针运算符* 成员运算符 . 指向成员的运算符 -> 下标运算符[] C++混合运算类型转换规则: 字符可以作为整数参与数值运算,整数值为其在ASCII码表对应的数值。 操作数为字符或短整型时,系统自动转换成整型。 操作数为实型时,系统自动转换成双精度型。 当两数操作数类型不同时,将精度低的操作数的
阅读全文
摘要:1 #include<stdio.h> 2 #include<stdlib.h> 3 #include<string.h> 4 5 struct student { 6 char id; 7 struct student* next; 8 }; 9 typedef struct student S;
阅读全文
摘要:以下只是是一段普普通通的源文件,爆出一堆莫名其妙的错误 查询一番发现: 高版的VS默认不让使用scanf,fopen等函数,说是scanf,fopen等函数不安全,而代替其函数的是scanf_s,fopen_s等函数,后边有个"_s"的形式想要使用,可以在源文件开头加个: #define _CRT_
阅读全文
摘要:头结点:有时,在链表的第一个结点之前会额外增设一个结点,结点的数据域一般不存放数据(有些情况下也可以存放链表的长度等信息),此结点被称为头结点。 若头结点的指针域为空(NULL),表明链表是空表。头结点对于链表来说,不是必须的,在处理某些问题时,给链表添加头结点会使问题变得简单。 首元结点:链表中第
阅读全文
摘要:一.问题描述:找出所有形如“abc*de”(三位数乘以两位数)的算式,使得在完整的竖式中,所有数字都属于一个特定的数字集合。输入数字集合(相邻数字之间没有空格),输出所有竖式。每个竖式前应有编号,之后应有一个空行。最后输出解的总数。具体格式见样例输出(为了便于观察,竖式中的空格改用小数点显示,但所写
阅读全文