c++
文章平均质量分 58
楚燕狂子
自由且理性
展开
-
虚函数的实现原理--c++虚函数表解析
这里有一篇博客写的很不错:c++虚函数表解析解析 typedef void(*Fun)(void);// 这是将Fun定义为一个指向 void (void) 函数类型的函数指针 &b;// 得到对象的地址(开头) (int*)(&b);// 虚函数表的地址存在对象最前面的位置的指针中(保证最快的取到虚函数表), 取址,解释为指针 (int*)* (int*)(&b);//对原创 2015-09-17 16:43:09 · 601 阅读 · 0 评论 -
操作二进制位串的工具
操作二进制位串的工具一.位运算符 位运算符作用于整数类型的对象,并把运算对象看成是二进制位的集合。 它提供检查和设置二进制位的功能。 运算符 功能 用法 ~ 位求反 ~expr << 左移 expr1 << expr2 >> 右移 expr1 >> expr2 & 位与 expr1 & expr2 ^ 位异或 e原创 2015-09-15 10:56:05 · 1167 阅读 · 0 评论 -
数组名和指针的区别
指针和数组的关系很微妙,之前一直不清不楚,今天好好的看了一下大家的意见,在此总结一下。数组名不是指针数组名神似指针数组名的内涵在于其指代实体是一种数据结构,这种数据结构就是数组;数组名的外延在于其可以转换为指向其指代实体的指针,而且是一个指针常量;指向数组的指针则是另外一种变量类型(在WIN32平台下,长度为4),仅仅意味着数组的存放地址! 引用自此讨论区#24 此博客的讲解有一定作原创 2015-09-19 17:48:39 · 525 阅读 · 0 评论 -
c++生成随机数
获取均匀分布的随机数经典方法获取任意分布的随机数原创 2015-09-18 16:57:59 · 3503 阅读 · 0 评论 -
蓝桥杯 兰顿蚂蚁
问题描述 兰顿蚂蚁,是于1986年,由克里斯·兰顿提出来的,属于细胞自动机的一种。 平面上的正方形格子被填上黑色或白色。在其中一格正方形内有一只“蚂蚁”。 蚂蚁的头部朝向为:上下左右其中一方。 蚂蚁的移动规则十分简单: 若蚂蚁在黑格,右转90度,将该格改为白格,并向前移一格; 若蚂蚁在白格,左转90度,将该格改为黑格,并向前移一格。原创 2016-03-16 14:18:47 · 1019 阅读 · 0 评论 -
分糖果 蓝桥杯
问题描述 有n个小朋友围坐成一圈。老师给每个小朋友随机发偶数个糖果,然后进行下面的游戏: 每个小朋友都把自己的糖果分一半给左手边的孩子。 一轮分糖后,拥有奇数颗糖的孩子由老师补给1个糖果,从而变成偶数。 反复进行这个游戏,直到所有小朋友的糖果数都相同为止。 你的任务是预测在已知的初始糖果情形下,老师一共需要补发多少个糖果。输入格式 程原创 2016-03-17 11:29:56 · 975 阅读 · 0 评论 -
矩阵翻硬币 蓝桥杯 大数开方 大数相乘
问题描述 小明先把硬币摆成了一个 n 行 m 列的矩阵。 随后,小明对每一个硬币分别进行一次 Q 操作。 对第x行第y列的硬币进行 Q 操作的定义:将所有第 i*x 行,第 j*y 列的硬币进行翻转。 其中i和j为任意使操作可行的正整数,行号和列号都是从1开始。 // i、j为任意数 当小明对所有硬币都进行了一次 Q 操作后,他发现了一个奇迹转载 2016-03-14 22:24:20 · 627 阅读 · 0 评论