![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
bine_
编程爱好者
展开
-
随手写个控制台贪吃蛇(C/C++)
随手用C/C++写了一个控制台贪吃蛇,用_kbhit()判断输入缓存区是否有输入字符,{ 72, 77, 80, 75 } 分别表示上右下左的编码,实际上按一下方向键“上”会输入ascii值为-32和72两个字符;方向数组下标+2再模4能得到相反的方向。原创 2015-05-14 11:26:56 · 723 阅读 · 0 评论 -
C++关于类的一些笔记
1. 友元函数不能之间访问对象数据成员,也不能通过this指针访问,只能用函数参数传递进来(访问规则和成员函数一致)2. 派生类继承基类的成员,访问权限为继承规则和声明时权限最低的那个3. 函数的参数或返回值不是对象的引用都会调用类的拷贝构造函数构造中间对象4. 类的拷贝构造函数参数必须为对象的引用,否则会无限递归(拷贝函数也是函数,递归原因参照 3.)5. 类的构造函数调用顺序遵循:先调用基类,如果继承多个原创 2015-05-09 15:50:27 · 443 阅读 · 0 评论 -
C++64位整型相乘取模的溢出处理(一)
在ACM中做题时经常会出现输出的结果要模以一个数,如模10^9+7,一般来说用64位整型long long(有些编译器是__int64)来保存答案是没有什么问题的,因为10^9+7没有超过2^31-1,即32位整型int也能存得下,int * int 也不会溢出 long long,但是就是有些坑爹的题目取模的数超过int,就有可能出现两个long long类型相乘时溢出的情况原创 2015-06-08 15:43:27 · 5340 阅读 · 0 评论 -
C++64位整型相乘取模的溢出处理(二)
上一篇博文讲了一种类似快速幂的方法解决long long相乘溢出的问题,方法中规中矩,这里再介绍一个有点类似“玄学”的方法,先直接上代码#include <iostream>using namespace std;const long long MOD = 1000000000000000000L;long long mul(long long a, long long b) { long原创 2015-06-08 16:58:54 · 2458 阅读 · 1 评论 -
C++11中的匿名函数(lambda函数,lambda表达式) (转)
转载:http://www.cnblogs.com/pzhfei/archive/2013/01/14/lambda_expression.html C++11提供了对匿名函数的支持,称为Lambda函数(也叫Lambda表达式)。 Lambda表达式具体形式如下: [capture](parameters)->return-type{body} 如果没有参数,空的圆括号()可以省略。返回转载 2015-07-27 17:21:06 · 630 阅读 · 0 评论