编译原理的实验:完成对C++语言的词法分析
先说一下整体框架:
基类:Base 封装了一些基础的字符判断函数,如下:
int charkind(char c);//判断字符类型
int spaces(char c); //当前空格是否可以消除
int characters(char c);//是否是字母
int keyword(char str[]);//是否是关键字
in...
分类:
编程语言 时间:
2016-04-26 20:24:38
收藏:
0 评论:
0 赞:
0 阅读:
269
JVM物理结构
1、Heap(堆):一个Java虚拟实例中只存在一个堆空间
2、MethodArea(方法区域):被装载的class的信息存储在Methodarea的内存中。当虚拟机装载某个类型时,它使用类装载器定位相应的class文件,然后读入这个class文件内容并把它传输到虚拟机中。
3、JavaStack(java的栈):虚拟机只会直接对Javastack执行两种操作:以帧为单位的压栈...
分类:
编程语言 时间:
2016-04-26 20:24:28
收藏:
0 评论:
0 赞:
0 阅读:
197
我们在做移动开发的时候,会把一些变化的,或者固定的配置信息放到一个地方进行同意管理,存储。
起初的开发者,一般会直接放到一个类中,以静态的方式存放。比如请求地址url,数据库配置信息的数据库名,表名,字段名等。到了后来,需要配置的信息慢慢变的越来越多,那么就统一到一个专门的配置文件中放到资源里面,设定好数据存放规则,以一定的方式来读取配置信。...
分类:
其他 时间:
2016-04-26 20:24:18
收藏:
0 评论:
0 赞:
0 阅读:
279
一天一道LeetCode系列(一)题目
Implement strStr().
Returns the index of the first occurrence of needle in haystack, or -1 if needle is not part of haystack.
(二)解题第一种解法:朴素匹配算法
/*两个指针,分别指向两个字符串的首字符如果相等则一起向后移...
分类:
其他 时间:
2016-04-26 20:24:08
收藏:
0 评论:
0 赞:
0 阅读:
226
需要使用IDEA ultimate版本,才会有Web支持。0.创建工程 File->New->Project…
一路向下,最后创建一个tomcat server,mac上下载解压即可,非常简单,不详细描述。 完成后,idea会自动下载Spring相关lib,同时创建一个示例工程,下面看看idea到底自动做了哪些配置。对了解整个工程结构,web服务和框架的启动流...
分类:
编程语言 时间:
2016-04-26 20:24:00
收藏:
0 评论:
0 赞:
0 阅读:
231
最小函数依赖集
一、等价和覆盖
定义:关系模式R上的两个依赖集F和G,如果F+=G+,则称F和G是等价的,记做F≡G。若F≡G,则称G是F的一个覆盖,反之亦然。两个等价的函数依赖集在表达能力上是完全相同的。
二、最小函数依赖集
定义:如果函数依赖集F满足下列条件,则称F为最小函数依赖集或最小覆盖。
① F中的任何一个函数依赖的右部仅含有一个属性;
② F中不存在...
分类:
其他 时间:
2016-04-26 20:23:48
收藏:
0 评论:
0 赞:
0 阅读:
197
zookeeper 开源的hadoop 分布式协调服务,分布式服务可以基于他实现同步服务,配置维护和命名服务等。
为什么使用zookeeper:
大部分分布式应用需要一个主控,协调器或控制器来管理分布式的子进程(如资源,任务等)
协调程序的反复便携浪费,切难以形成通用,伸缩性好的协调器
提供分布式锁服务,用以协调分布式应用
优点:
实现最终一致性...
分类:
其他 时间:
2016-04-26 20:23:39
收藏:
0 评论:
0 赞:
0 阅读:
283
命令
实例和命令 persist
persist key-name 移除键的过期时间
ttl
ttl key-name 查看键的过期时间还有多少秒
expire
expire key-name seconds 设置过期时间
expireat
expireat key-name timestamp 设置过期时间,UNIX时间戳
pttl
pttl key-na...
分类:
其他 时间:
2016-04-26 20:23:28
收藏:
0 评论:
0 赞:
0 阅读:
189
卸载mysql,Windows系统安装 MySQL 5.7.7 ZIP包...
分类:
数据库技术 时间:
2016-04-26 20:23:19
收藏:
0 评论:
0 赞:
0 阅读:
254
An Easy Task
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 19908 Accepted Submission(s): 12725
Problem Description
Ignatius was bo...
分类:
其他 时间:
2016-04-26 20:23:09
收藏:
0 评论:
0 赞:
0 阅读:
206
这一章节我们来讨论一下脏读(DirtyRead)。1.为什么出现脏读?因为代码没有做同步,虽然set方法同步,但是由于get方法一般都会忘了,导致读的值是被写过的2.代码清单(1)由于程序没有同步,并且执行太快,导致脏读package com.ray.deepintothread.ch02.topic_4;
public class DirtyRead {
public static void...
分类:
编程语言 时间:
2016-04-26 20:22:58
收藏:
0 评论:
0 赞:
0 阅读:
240
(很多内容是网上找的,+上我个人的一点理解,推荐大家去看 http://mnstory.net/2014/10/qemu-device-simulation 这篇文章)
qemu启动时,如果配置了相应virtio设备,会对guest的pci总线,virtio设备等进行模拟,先来看看qemu的设备模拟,那i8254/PIT为例(PIT的硬件规范略过,有兴趣的话可以参考 http://wiki.os...
分类:
其他 时间:
2016-04-26 20:22:50
收藏:
0 评论:
0 赞:
0 阅读:
245
1.断点调试是啥?难不难?
断点调试其实并不是多么复杂的一件事,简单的理解无外呼就是打开浏览器,打开sources找到js文件,在行号上点一下罢了。操作起来似乎很简单,其实很多人纠结的是,是在哪里打断点?(我们先看一个断点截图,以chrome浏览器的断点为例)
步骤记住没?
用chrome浏览器打开页面 → 按f12打开开发者工具 → 打开Sources → 打开...
分类:
Web开发 时间:
2016-04-26 20:22:38
收藏:
0 评论:
0 赞:
0 阅读:
304
jqGrid行编辑配置,方法,事件
行编辑可以在行修改后更新数据,如下图所示
用户用鼠标点击选择一行,jqGrid将可编辑的字段转换为数据输入单元,如上面图所示。不可编辑的列,如id,不会转为可输入单元,而是保持不变。可以通过配置colModel来实现。完成修改后,按下“enter”键提交数据到服务器。
软件要求和安装
要使用行编辑功能,需要在jqGrid下载页...
分类:
其他 时间:
2016-04-26 20:22:28
收藏:
0 评论:
0 赞:
0 阅读:
228
一、前言 谈到分页,在网页上简直到处都是。网络的资源越来越多,如果不用分页技术来显示,就会拖拉很长很长。下面给大家分享分页技术。二、基本要点 当要显示数据量足够大的时候,我们往往采用分页显示的处理办法。分页有真分页和假分页。
假分页:从数据库中取出所有的数据,然后分页在界面上显示。访问一次数据库,但由于选择的数据量比较大,所以第一次花费时间比较长,但之后每一页的显示都是直接、快速...
分类:
Web开发 时间:
2016-04-26 20:22:18
收藏:
0 评论:
0 赞:
0 阅读:
142
线程互斥概念
线程互斥是指某一资源同时只允许一个访问者对其进行访问,具有唯一性和排它性。但互斥无法限制访问者对资源的访问顺序,即访问是无序的。
实现线程同步互斥的四种方式
临界区(Critical Section):适合一个进程内的多线程访问公共区域或代码段时使用
互斥量 (Mutex):适合不同进程内多线程访问公共区域或代码段时使用...
分类:
编程语言 时间:
2016-04-26 20:22:08
收藏:
0 评论:
0 赞:
0 阅读:
252
一、关于性能优化的几处问题
1.是否应该手动调用System.gc()?
不应该。在Android 2.2 (API level 8)以及之前,当垃圾回收发生时,应用的线程是会被暂停的,这会导致一个延迟滞后,并降低系统效率。 从Android 2.3开始,添加了并发垃圾回收的机制,但是在GC开始和结束的时候仍然会阻塞主线程。
2.是否有必要调用Bitmap.recycle()方法?...
分类:
其他 时间:
2016-04-26 20:21:58
收藏:
0 评论:
0 赞:
0 阅读:
228
关于在浪潮服务器上安装RHEL操作系统。...
分类:
系统服务 时间:
2016-04-26 20:21:49
收藏:
0 评论:
0 赞:
0 阅读:
239
1--我们知道Mat是一个图像容器类,这个数据结构由两部分组成:
1--矩阵头--即class Mat类所实例化的类对象所开辟的空间里面存储的数据---就是这个矩阵的信息,当我们以
Mat object;这样声明类对象的时候,也仅仅是创建了一个Mat的信息头,并没有创建矩阵体,也就是说,我们并
没有给将要存储的图像开辟相应的空间
2--矩阵头--包含:
1--矩阵...
分类:
其他 时间:
2016-04-26 20:21:38
收藏:
0 评论:
0 赞:
0 阅读:
228
上篇文章主要对于对象的构造含和析构进行了主要说明,这篇文章将对对象构造前的内存配置和对象析构后的空间释放进行深入探索。
好的,话不多说马上进入是正文:
对对象构造前的内存配置和对象析构后的空间释放,由负责,SGI对此的设计哲学如下:
向system heap要求空间。
考虑多线程的状态
考虑内存不足的应变措施
考虑过多的“小型区块”可能造成的内存碎片问题
C++的内存配置...
分类:
其他 时间:
2016-04-26 20:21:28
收藏:
0 评论:
0 赞:
0 阅读:
128