自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 资源 (1)
  • 收藏
  • 关注

原创 C++模板之数组遍历操作与遍历输出

#include <iostream>template<typename T, void (*f)(T &v)>void foreach(T array[], unsigned size){ for(unsigned i = 0; i < size; ++i) { f(array[i]); }}templa...

2018-08-04 16:01:55 1078

原创 C++ 快速排序

int partition(int vector<int> &vi, int low, int up){ int pivot = vi[up]; int i = low - 1; for(int j = low; j < up; j++) { if(vi[j] <= pivot) { ...

2018-07-29 09:23:32 238

原创 C++输入日期判断是周几

/* 输入日期判断是周几 */#include <stdio.h> /* printf, scanf */#include <time.h> /* time_t, struct tm, time, mktime */int main (){ time_t rawtime; struct tm * timeinfo; i...

2018-07-28 11:35:45 2837

原创 C++计算自1970-01-01起经过的小时数

#include <stdio.h>#include <time.h>int main (){ time_t seconds; seconds = time(NULL); printf("自 1970-01-01 起的小时数 = %ld\n", seconds/3600); return(0);}...

2018-07-28 11:12:43 335

原创 C++ 将当前日期以 **** - ** - ** 格式输出

#include <iostream>#include <ctime>#include <stdlib.h>#include <stdio.h>using namespace std;string Get_Current_Date();int main( ){ // 将当前日期以 20** - ** -

2018-07-28 11:07:03 430 1

原创 C++ 输出tm结构的各个组成部分

#include <iostream>#include <ctime>using namespace std;int main( ){ // 基于当前系统的当前日期/时间 time_t now = time(0); cout << "1970 到目前经过秒数:&am

2018-07-28 11:04:33 834

原创 递归

是什么:递归是一项非常重要的编程技术,它让函数可以从函数体内部调用自身。一个过程或函数直接或间接调用自身,这种过程或函数叫递归过程或递归函数。作用: 递归通常把一个大型复杂的问题层层简化为一个与原问题相似的规模较小的问题来求解。使用递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算。这样就大大地减少了程序的代码量。递归的能力在于能运用有限的语句来定义对象的无限集合。注意

2018-07-12 17:10:14 116

原创 条件语句有哪几种形式

在C++中,对于switch结构,能而且只能在它的最后一个case标号或default标号后面定义变量。这个规则的制定是为了避免出现代码跳过变量的定义和初始化的情况。另外也可以引用块语句来定义变量,从而保证变量在使用前可以被定义和初始化。

2018-01-19 16:58:31 3601

转载 C++变量有什么命名规则

变量名可以由字母、数字和下划线组成。变量名必须以字母或下划线开头,并且区分大小写字母,C++中的标识符都是大小写敏感的。C++语言本身并没有限制变量名的长度,但考虑到将会阅读或修改编程者的代码的其他人,变量名不应太长。C++保留了一组词用作语言的关键字。C++的关键字不能用作变量名。

2018-01-19 15:54:56 537

原创 什么是匈牙利命名法

匈牙利命名法是一种编程时的命名规范。该命名法的变量名以一个或者多个小写字母开始,用这些字母来帮助记忆变量的类型和作用,后面跟着程序员自己选择的名称。它的命名基本原则为:变量名=属性+类型+对象描述,其中每一对象的名称都要求有明确的含义,可以取对象名字全称或名字的一部分。对象的命名要基于容易记忆容易理解的原则。保证名字的连贯性是非常重要的。匈牙利命名法的主要思想是:在变量和函数名中加入前缀以增进人们

2018-01-19 15:44:31 884

原创 C与C++的区别

C语言是结构化和模块化的语言,它是一种面向过程的语言。C++是从C进化而来,它保留了C语言的优点,同时增加了面向对象机制,C++语言是C语言的一个超集。C++是一种强类型语言,比起C语言,C++有着非常严格的数据类型检查。C++和C的强制类型转换的方法也有所区别。C++比C语言增加了一些关键字和几种类型的变量。C++和C语言函数的参数规定有所不同。引用使用的不同

2018-01-19 15:34:13 449

原创 测试问题

1测试方案根据什么写的 2会不会linux系统指令 3测试的风险有哪些 4搭建环境有什么要注意哪些 5测试计划编写思路{临界值,等价划分等} 6有没有遇到需求不明确的,是怎么做的 7会哪些测试工具 8会哪种数据库

2017-10-18 23:06:02 425

原创 C语言编译过程分成四个步骤

C语言编译过程分成四个步骤: 1,由.c文件到.i文件,这个过程叫预处理 2,由.i文件到.s文件,这个过程叫编译 3,由.s文件到.o文件,这个过程叫汇编 4,由.o文件到可执行文件,这个过程叫链接用gcc查看预处理过程(假设源文件叫hello.c) gcc -o hello.i hello.c -E 然后用 vi hello.i 即可查看生成的预处理文件 按ESC 输

2017-08-13 15:21:31 20481

转载 软件测试问题

1,假定无法完全测试某一程序,在决定是否应该停止测试时要考虑哪些问题?2,启动Windows计算器程序,输入5,000-5=(逗号不能少),观察结果。这是软件缺陷吗?为什么?3,假如测试飞行之类的模拟游戏,精度和准确度哪一个更值得测试?4,有没有质量很高但可靠性很差的产品?请举例说明。5,为什么不可能完全测试程序?6,假如周一测试软件的某一功能,每小时发现一个新的软件缺陷,你认为周二将会以什么频率发

2017-05-12 21:40:49 1566

原创 常用Java正则表达式

/** * 常用正则表达式:匹配非负整数(正整数 + 0) */ public final static String regExp_integer_1 = “^\d+$”;/** * 常用正则表达式:匹配正整数 */public final static String regExp_integer_2 = "^[0-9]*[1-9][0-9]*$";/**

2017-03-23 09:09:24 233

原创 软件测试中的驱动函数和被测函数?

驱动函数:在测试被测函数时,一般需要在一个函数中构造一些实验数据作为传入被测函数的实参,然后再在该函数中调用被测函数,之后检测测试结果。这样的函数被称为驱动函数。桩函数:在测试被测函数时,被测函数可能要调用一个未被实现功能的函数(或一连串函数的调用)。这时测试人员可以写一个临时的简单的函数来模拟被调函数的部分行为。这样的函数被称为桩函数。

2017-03-01 13:09:57 1419

原创 Android自动化测试工具比较

MonkeyRunner 优点:操作简单,可以录制测试脚本,可视化操作 缺点:主要完成坐标的自动化操作,移植性不强,功能最为局限 Robotium 优点:主要针对某一个APK进行自动化测试,APK可以有源码,也可以没有源码,功能强大; 缺点:需要对APK重新签名,因此操作相对复杂 UiAutomator 优点:可以对所有操作进行自动化,操作简单; 缺点:Android版本需要高于4

2017-02-25 20:59:30 433

原创 软件测试高级问题

1,如何设计你的自动化来解决支持的业务和工程问题?2,怎么应对页面不稳定的情况?3,怎么应对需求总是变化的情况?4,怎么应对case的增长带来的性能问题?

2017-02-25 20:54:10 488

原创 在Eclipse里调试UiAutomator

该类来自github开源项目fan2597/UiAutomatorHelper,在此感谢该项目作者,如有侵犯权益,望告知,速删!!!import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.File;import java.io.FileInputStream;import java.io.FileN

2017-02-25 19:32:01 1314

原创 怎么样查看app的包名和启动activity名

aapt dump badging 你的apk路径(如D:\xxx.apk)

2017-02-25 15:46:48 3399

原创 软件测试面试题

什么是软件测试及其目的? 答:软件测试是使用人工或自动化手段来运行或测定某个系统的过程。其目的在于检验它是否能满足规定的需求或是弄清楚预期结果与实际结果之间的差别。简述集成测试的过程? 答:在完成软件的概要设计后,即开始制定集成测试计划-》设计集成测试用例和测试过程-》实施集成测试,设计所需驱动和桩-》执行集成测试,记录测试结果-》评估集成测试,根据测试结果评估此次测试,生成评估报告文档。白盒测

2017-02-25 15:43:52 2451

原创 Serializable和Parcelable的比较

《Android开发艺术探索》读书笔记

2016-12-15 17:17:50 296

原创 一段伪代码把握Android事件分发机制

下面的代码引用自《Android开发艺术探索》:public boolean dispatchTouchEvent(MotionEvent ev){ boolean consume = false; if(onInterceptTouchEvent(ev)) { consume = onTouchEvent(ev); } else {

2016-12-14 10:14:36 339

原创 Android使用LinkedHashMap实现一个LRU算法的内存缓存

LinkedHashMap的一些特点:LinkedHashMap是一个先进先出的队列,里面的每一个元素都是Entry。它的key和value都可以为null。在插入一个新元素时,LinkedHashMap会判断你这个元素的key是否已经存在,如果存在,就用原来的key和你新插入的value关联,原来的value不用了,这样的话,LinkedHashMap还是保持原来的大小。比如你原来的Link

2016-12-11 14:27:04 1198

原创 Intent的NEW_TASK

public static int getMemoryCache(Context context){ ActivityManager am = (ActivityManager)context.getSystemService(Context.ACTIVITY_SERVICE); int memory = am.getMemoryClass(); if((Build...

2016-12-11 12:43:02 499

原创 Android实现硬盘缓存

Android实现硬盘缓存的步骤:开辟一块空间,也就是目录为缓存的图片生成一个唯一的名字,设置图片的后缀名缓存图片到目录中清空缓存图片下面按照以上步骤用代码实现。 1.开辟一块空间2.为缓存的图片生成一个唯一的名字,设置图片的后缀名,这个有多种方法,这里介绍两种,根据网络图片的路径生成HashCodeString.valueOf(imageUrl.hashCode());使用Md5算法对

2016-12-10 18:38:49 664

原创 有关EventBus的一些问答

以下结论基于EventBus2.4.0问: 注册EventBus后,EventBus怎么保存我们的注册信息,这里的注册信息包括我们是在哪个Activity或Fragment中注册的,注册的事件,以及接收事件时处理的方法?答:EventBus通过反射找到我们的事件类型和接收事件处理的方法,以及处理事件时的线程模式,封装到一个叫SubscriberMethod的类中,然后把SubscriberMetho

2016-12-09 12:23:21 342

原创 EventBus源码阅读笔记(2)

EventBus调用post后的源码阅读

2016-12-08 17:36:19 296

原创 EventBus源码阅读笔记(1)

本例子基于EventBus2.4.0的源码,全部笔记都以图片的方式呈现,因为在博客上粘贴代码,实在难看。

2016-12-08 12:36:34 317

原创 ViewPager与Fragment配合使用实现引导页

ViewPager配合Fragment实现引导页

2016-12-05 18:52:36 2465

原创 Android动画让两个小圆球不停地在屏幕上左右移动

1.MainActivity代码: 2.activity_main的布局: 3.drawable/green布局: 4.drawable/yellow布局: 5.R.anim.green布局: 6.R.anim.yello布局: 效果图:

2016-12-05 18:16:15 2216

原创 Android设置全屏

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Window window = getWindow(); WindowManager.LayoutParams param =

2016-12-05 16:42:07 313

原创 Activity的启动模式

1,启动模式为standard时,如果是自己启动自己,那么每次都将在同一个栈中创建一个新的实例,覆盖在原有实例之上。2,启动模式为其他三种模式时,如果是自己启动自己,那么每次都将在同一个栈中先回调自己的onPause,再调用onNewIntent方法,最后调用onResume。

2016-12-05 15:01:40 250

原创 Activity启动模式测试

Activity四种启动模式测试:Android6.0.0,应用中有两个Activity,分别为A,B,程序入口为A。(1)A,B启动模式都为standard时,启动A后,通过startActivity启动B,结果:A,B都在同一个 task中,在B中通过startActivity启动A,结果会在B之上再创建一个A的实例,此时,在该task中从栈底到栈顶activity的排序为A,B,A。(2

2016-12-05 13:12:15 449

原创 蓝牙对话框不关闭

在魅蓝note2,android5.1上,当在activity的onResume方法里打开系统对话框请求打开蓝牙时,除非点击确定,否则对话框不会消失,在onCreate和onStart方法里打开却没有出现这种情况。为什么?

2016-11-29 16:25:51 365

原创 ViewPager的onPageChangeListener三个方法的执行顺序及细节

ViewPager的onPageChangeListener的三个方法执行细节

2016-11-29 14:34:51 4519 2

redis阅读笔记.zip

是本人阅读redis源码做的笔记,以windows画图的形式记录

2019-10-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除