自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(48)
  • 收藏
  • 关注

转载 LNMP环境的搭建及其测试详细解说

LNMP==Linux+Apahe+Mysql+PHP安装时,必须遵从先后顺序。mysql--PHP--nginx以下安装的版本信息如下:mysql:5.1nginx:1.4PHP:5.3Linux:CentOS 6.6Mysql的相关安装信息安装步骤如下:进入文件目录,下载安装的mysql版本并解压。#:cd /usr/local/src#:w

2017-09-12 22:01:16 3540

转载 LAMP与LNMP架构的区别及其具体的选择说明

LAMP==Linux+Apache+Mysql+PHPLNMP==Linux+Nginx+Mysql+PHP以上两只架构是目前网站的主流架构LAMP和LNMP最主要的区别在于:一个使用的是Apache,一个使用的是Nginx。我们就来说说ApacheApache是世界是用排名第一的Web服务器软件,其几乎可以在所有广泛使用的计算机平台上运营,由于其跨平台和安全性被

2017-09-12 22:00:23 1357

原创 git冲突

如果系统中有一些配置文件在服务器上做了配置修改,然后后续开发又新添加一些配置项的时候,在发布这个配置文件的时候,会发生代码冲突:error: Your local changes to the following files would be overwritten by merge:        protected/config/main.phpPlease, commit y

2017-08-14 16:06:21 271

转载 Python+Selenium定位不到元素常见原因及解决办法(报:NoSuchElementException)

在做web应用的自动化测试时,定位元素是必不可少的,这个过程经常会碰到定位不到元素的情况(报selenium.common.exceptions.NoSuchElementException),一般可以从以下几个方面着手解决:1.Frame/Iframe原因定位不到元素:  这个是最常见的原因,首先要理解下frame的实质,frame中实际上是嵌入了另一个页面,而webdriver每次只能

2017-08-11 13:34:50 14738 1

原创 配置一个新服务器环境并部署项目

空空的一个服务器,啥也没用,新手菜鸟这个无助啊先查下什么系统:uname -a看出为linux系统,但是linux下面有fedora、ubuntu、redhat,看见有el6,得知为redhat系统,查找资料范围可以缩小网上资料介绍:EL is short for Red Hat Enterprise Linux (EL).EL6 is the download for

2017-08-09 11:14:19 29500 1

转载 运行tomcat9w.exe tomcat9.exe ,提示 指定的服务未安装unable to open the service 'tomcat9'

从http://tomcat.apche.org下载Tomcat9.0最新版本,配置好Tomcat环境变量后,运行tomcat9w.exe启动服务,系统一直提示指定的服务未安装unable to open the service 'tomcat9'有说从命令行提示符窗口   输入startup.bat   不行最终的解决方案:win+R打开输入命令提示符窗口,先cd..退回,后进入To

2017-07-29 00:22:00 1341

原创 Python中file()和open()的区别

open和file都是用来对文件的操作open:内置函数,使用方式是open('file_name', mode, buffering),返回值是一个file对象,以写模式打开文件如果不存在会被创建一个新的。file:是一个类,使用file('file_name', 'r+')这种方式打开文件,返回一个file对象,以写模式打开文件不存在则会被创建,官方文档上更推荐我们使用open

2017-07-25 10:14:46 3482

原创 python基础学习-There's an error in your program:expected an indented block错误解决

strings = "hello world"for l in strings:print l运行时报错:Python语言是一款对缩进非常敏感的语言,给很多初学者带来了困惑,即便是很有经验的python程序员,也可能陷入陷阱当中。最常见的情况是tab和空格的混用会导致错误,或者缩进不对,而这是用肉眼无法分别的。在编译时会出现这样的错Indentati

2017-07-24 18:04:33 2042

转载 Python编码问题整理

问题:最近新安装了Python2.7.8发现中文打印都是乱码,之前使用的Python3.6就不会,加入此行代码才能正常显示  # -*- coding: gb2312 -*-问题整理:GB2312 是中国规定的汉字编码,也可以说是简体中文的字符集编码GBK是GB2312的扩展,除了兼容GB2312外,它还能显示繁体中文,还有日文的假名cp936:中文本地系统是Windows

2017-07-20 18:10:56 261

转载 selenium自动化测试资源整理(含所有版本chrome、chromedriver、firefox下载链接)

1. 所有版本chrome下载是不是很难找到老版本的chrome?博主收集了几个下载chrome老版本的网站,其中哪个下载的是原版的就不得而知了。http://www.slimjet.com/chrome/google-chrome-old-version.phphttp://google_chrome.en.downloadastro.com/old_versions/h

2017-07-19 16:49:43 987

原创 Selenium打开谷歌浏览器提示chromedriver.exe停止运行且浏览器显示请停用以开发者模式运行的扩展chengx

#coding=utf-8from selenium import webdriverdriver = webdriver.Chrome()driver.get("http://www.baidu.com")driver.find_element_by_id("kw").send_keys("Selenium2")driver.find_element_by_id(

2017-07-19 16:45:21 9775 1

原创 安装python-selenium环境

Windows下环境安装:1、https://www.Python.org/   访问此网址根据Windows下是32位还是64位进行下载.msi文件,一路next可以成功安装。cmd进入后输入python,若提示Python不是内部或外部命令。。。,则将python的安装目录添加到环境变量中。(控制面板-系统-高级系统设置-环境变量-系统变量中的path)2、安装setuptools

2017-07-19 13:57:53 428

原创 selenium使用chrome时,报错ignore certificate errors

#coding=utf-8from selenium import webdriverdriver = webdriver.Chrome()driver.get("http://www.baidu.com")driver.find_element_by_id("kw").send_keys("Selenium2")driver.find_element_by

2017-07-19 10:32:20 3222

原创 java--foreach语句

foreach语句是for语句的特殊简化版,foreach不能完全取代for语句,然而foreach语句都可以改为for语句版本。for(元素变量x:遍历对象obj){         引用了x的java语句;}public class Repetition{         publicstatic void main(String args[]){         in

2015-12-29 09:42:44 487

原创 java--equal同==的区别

总的来说:==比较的是对象的地址,也就是是否是同一个对象。                   equal比较的是对象的值。java中的数据类型,可分为两类:1.      基本数据类型,也称原始数据类型。byte,short,char,int,long,float,double,boolean他们之间比较应使用==,比较的是他们的值。2.      复合数据类型(类)比较

2015-12-29 09:41:35 348

原创 java--final关键字的作用

1、final修饰类中的属性或者变量无论属性是基本类型还是引用类型,final所起的作用都是变量里面存放的“值”不能变。这个值,对于基本类型来说,变量里面放的就是实实在在的值,如1,“abc”等。而引用类型变量里面放的是个地址,所以用final修饰引用类型变量指的是它里面的地址不能变,并不是说这个地址所指向的对象或数组的内容不可以变,这个一定要注意。引用类型指什么?例如:类中有一个

2015-12-29 09:40:18 468

原创 java---成员变量

--- 实例变量---static静态变量   静态变量的有效范围可以跨类,除了可以定义它在类内存取,还可以直接“类名.静态变量”的方式在其他类内使用。2.局部变量public class Val{         staticint times=3;                                        //定义成员变量times        

2015-12-29 09:39:22 309

转载 二维数组 指针数组 数组指针 二级指针

#include /*指针数组:array of pointers,即用于存储指针的数组,也就是数组元素都是指针数组指针:a pointer to an array,即指向数组的指针int* a[4] 指针数组         表示:数组a中的元素都为int型指针([]优先级高于*)    元素表示:*a[i]int (*a)[4] 数组指针

2015-07-08 16:40:05 429

原创 c之统一分配内存技巧

1.struct name {int namelen;char namestr[1];};我们声明这样的结构,然后用一些内存技巧是namestr数组用起来好像有多个元素,namelen记录了元素个数。#include #include struct name *makename (char *newname){struct name *ret = malloc(

2015-07-03 15:53:47 420

原创 c问题

1.char *p1,p2;c语言中,声明的语法是                  基本类型 生成基本类型的东西;所以上面声明了一个char类指针,而p2声明符只有p2,为普通char型变量。char *p1, *p2; 2.声明一个指针并为其分配空间。char *p;*p = malloc(10);这里声明的指针是p不是*p。 3.一个全局变量或函数可以

2015-06-30 10:15:20 340

原创 c++类的改进

1.#include class Trace {public:void print(char * s) {printf("%s", s); }};int main(){Trace t ;t.print("begin main() \n");// main 函数的主体t.print("end main() \n");}2.让他可以随时关闭#in

2015-06-29 15:56:23 208

原创 内联函数讲解

一、什么叫inline函数? inline(小心,不是online),翻译成“内联”或“内嵌”。意指:当编译器发现某段代码在调用一个内联函数时,它不是去调用该函数,而是将该函数的代码,整段插入到当前位置。这样做的好处是省去了调用的过程,加快程序运行速度。(函数的调用过程,由于有前面所说的参数入栈等操作,所以总要多占用一些时间)。这样做的不好处:由于每当代码调用到内联函数,就需要在调用处直接插入

2015-06-29 15:52:38 324

原创 c++中字符串操作(未完成)

首先包含头文件  #include  不是string.h ,  string.h是c字符串头文件1.声明一个字符串变量string Str;这样我们就声明了一个字符串变量,但既然是一个类,就有构造函数和析构函数。上面的声明没有传入参数,所以就直接使用了string的默认的构造函数,这个函数所做的就是把Str初始化为一个空字符串。String类的构造函数和析构函数如下:a)

2015-06-25 10:51:46 311

原创 c++中static总结

通常不加修饰,默认的都是auto,auto和static是一对成对的关键字。auto的含义是由程序自动控制变量的生存周期,通常指的就是变量在进入其作用域的时候被分配,离开其作用域的时候被释放;而static就不是auto,变量在程序初始化时被分配,直到程序退出前才被释放,也就是static是按照程序的生命周期来分配释放变量的,而不是变量自己的生命周期。void func(){int

2015-06-24 14:43:54 412

原创 学习c++建议

每个从事C++开发的朋友相信都能给后来者一些建议,但是真正为此进行大致总结的很少。本文就给出了网上流传的对C++编程开发学习的50条建议,总结的还是相当不错的,编程学习者(不仅限于C++学习者)如果真的理解了这些建议,相信能够在学习时准确的抓住侧重点,少走弯路。下面列出这50条建议:       1、把C++当成一门新的语言学习(和C没啥关系!)。       2、看《Thinking

2015-06-17 18:24:43 383

原创 快捷键总结

linux终端: terminator ctrl+a :到命令开头ctrl+e:到命令结尾shift+ctrl+o:水平分屏shift+ctrl+e:垂直分屏shift+ctrl+w:关闭页面alt+J:下alt+K:上alt+H:左alt+L:右alt+tab:切换页面ctrl+alt+T:新建页面shift+ctrl+上箭头:上移分割界面sh

2015-05-14 10:39:18 333

原创 cairo api

void cairo_translate(cairo_t *cr, double tx, double ty);通过将用户空间的起源(tx,ty),修改当前的变换矩阵。使图片平移void cairo_rotate(cairo_t *cr, double angle);由用户空间轴旋转角度的弧度修改当前的变换矩阵。角度旋转方向由x轴正向朝着积极的Y轴。使图片旋转旋转函数接受弧度做参数

2015-04-27 16:31:44 944

转载 关联、聚合、组合的区别

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/gamecreating/archive/2010/03/22/5404589.aspx 关联,聚合,组合的区别及C++实现 收藏 类间关系在类图中,除了需要描述单独的类的名称、属性和操作外,我们还需要描述类之间的联系,因为没有类是单独存在的,它们通常需要和别的类协作,创造比单独工作更大的语义。在UML

2015-04-24 10:58:20 287

原创 cairo学习

环境:使用cairo绘图,必须要首先创建cairo环境,cairo环境保存着所有的图形状态参数,这些参数描述了图形的构成,譬如线条宽度、颜色、要绘制的外观及其他一些信息。cairo环境允许真正的绘图函数使用很少的一部分参数,以此提高接口的易用性。调用gdk_cairo_create()函数可为所绘制的图形创建一个cairo环境。cairo_t *cr;cr = gdk_cairo_cr

2015-04-20 17:02:14 843

原创 BMP文件格式详解

BMP文件格式,又称为Bitmap(位图)或DIB(设备无关位图),是Windows系统中广泛使用的图像文件格式。由于它可以不作任何变换地保存图像像素域的数据,因此成为我们取得RAW数据的重要来源。Windows的图形用户界面也在它的内建图像子系统GDI中对BMP格式提供了支持。BMP文件的数据按照从文件头开始的先后顺序分为四个部分:bmp文件头:提供文件的格式、大小等信息位图信息头:

2015-04-17 10:12:25 737

原创 png、jpeg、bmp、gif区别

BMP:是一种与硬件设备无关的图像文件格式,使用非常广。采用位映射存储格式,除了图像深度可选以外,不采用其他任何压缩,因此,BMP文件所占用的空间很大。GIF:是用于压缩具有单调颜色和清晰细节的图像(如线状图、徽标或带文字的插图)的标准格式。JPEG:文件后缀为".jpg"或".jpeg",是最常用的图像文件格式,是一种有损压缩格式,能够将图像压缩在很小的存储空间,图像中重复或不重要的资料

2015-04-16 16:12:46 4810

转载 C++中引用和指针的区别(转载)

指针和引用在C++中很常用,但是对于它们之间的区别很多初学者都不是太熟悉,下面来谈谈他们2者之间的区别和用法。1.指针和引用的定义和性质区别:(1)指针:指针是一个变量,只不过这个变量存储的是一个地址,指向内存的一个存储单元;而引用跟原来的变量实质上是同一个东西,只不过是原变量的一个别名而已。如:int a=1;int *p=&a;int a=1;int &b=a;上面定义了一

2015-04-09 17:55:55 278

原创 C++list、vector、map区别与用法

List封装了链表。vector封装了数组,list和vector的最主要区别在于vector使用连续内存存储的,list是以链表形式实现的。vector对于随机访问的速度很快,但是对于插入尤其是在头部插入元素速度很慢,在尾部插入速度很快。List对于随机访问速度慢得多,因为可能要遍历整个链表才能做到,但是对于插入就快的多了,不需要拷贝和移动数据,只需要改变指针的指向就可以了。map属

2015-04-07 14:44:34 1123

原创 C++中虚析构函数

析构函数是为了在对象不被使用之后释放它的资源,虚函数是为了实现多态。那么把析构函数声明为vitual有什么作用呢?请看下面的代码:1       #include 2       using namespace std;34       class Base5       {6       public:7           Base() {};       8

2015-04-03 11:22:45 243

翻译 ctags用法

vim + ctagsa  首先我们必需给要阅读的原始码建一个或多个tags文件,在shell下利用ctags命令给单个文件建立tags如下: $ ctags  filename.c要给同一个目录下的所有文件建立tags如下: $ ctags -R这时在tags文件所在的目录下打开源文件阅读,vim就会自动调用tags文件。如果tags文件不在当前目录下

2015-04-03 10:33:44 814

原创 安装Linux系统分区

内存3~4GSWAP  主内存两倍(虚拟分区)   4000MB(分出4G内存)ETX4(主)  相当于C盘   挂载 /     100000MB(100G)ETX4  (主)     相当于D盘   挂载 /data   剩余内存下次升级格式化可以只格 /  保存 /data

2015-04-03 10:18:23 386

原创 简化路径

如何cd $cc的时候直接到 ~/workspace/ccmake?      如何cd  $src的时候直接到 ~/workspace/source vi ~/.bashrc加入:export src=~/workspace/sourceexport cc=~/workspace/ccmake

2015-04-03 09:49:26 415

原创 编译工程

1.source ~/workspace/source/Terminator/Icebox/configs/test/env.sh设置环境变量,主要是交叉编译链的路径等同:export PATH=/opt/toolchains/stbgcc-4.8-1.0/bin:$PATHcd ccmake/out (带外编译,将编译过程放入out内)2.ccmake ~/workspace/s

2015-04-02 18:01:26 339

原创 svn学习

1.svn st | grep ? | cut -c 9- | xargs rm -rfsvn st同svn status 显示工作副本中目录与文件的状态| :表示一个管道,东西从管道的一边流向另外一边例如:cat 表示从/etc/motd文件中读取内容,然后把cat命令读取出来的内容作为后面一个命令a.out的输入参数来执行a.outcut命令:在文件中负责剪切数据-

2015-04-02 17:36:12 302

原创 Ubuntu下samba服务器的建立

1.关闭防火墙 sudo ufw disable2.先卸载samba-common sudo apt-get remove samba-common3.安装samba服务器 sudo apt-get install samba sudo apt-get install smbfs sudo vi /etc/samba/smb.conf 在文件末尾增加如下内容[W

2015-04-02 17:12:07 273

空空如也

空空如也

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

TA关注的人

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