拷贝

TortoiseSVN使用说明

不羁岁月 提交于 2019-12-06 02:35:43
google的svn http://code.google.com/intl/zh-CN/ TortoiseSVN是windows下其中一个非常优秀的SVN客户端工具。通过使用它,我们可以可视化的管理我们的版本库。不过由于它只是一个客户端,所以它不能对版本库进行权限管理。 TortoiseSVN不是一个独立的窗口程序,而是集成在windows右键菜单中,使用起来比较方便。 TortoiseSVN每个菜单项都表示什么意思 01、SVN Checkout(SVN取出) 点击SVN Checkout,弹出检出提示框,在URL of repository输入框中输入服务器仓库地址,在Checkout directory输入框中输入本地工作拷贝的路径,点击确定,即可检出服务器上的配置库。 02、SVN Update(SVN更新) 如果配置库在本地已有工作拷贝,则取得最新版本只是执行SVN Update即可,点击SVN Update,系统弹出更新提示框,点击确定,则把服务器是最新版本更新下来 03、Import(导入) 选择要提交到服务器的目录,右键选择TortoiseSVN----Import,系统弹出导入提示框,在URL of repository输入框中输入服务器仓库地址,在Import Message输入框中输入导入日志信息,点击确定,则文件导入到服务器仓库中。 04、Add(加入)

学习:STL_deque容器

我只是一个虾纸丫 提交于 2019-12-06 02:28:30
功能描述: deque容器构造 函数原型: deque<T> deqT; //默认构造形式 deque(beg, end); //构造函数将[beg, end)区间中的元素拷贝给本身。 deque(n, elem); //构造函数将n个elem拷贝给本身。 deque(const deque &deq); //拷贝构造函数 示例代码: #include<iostream> #include<string> #include<deque> using namespace std; /* `deque<T> deqT;` //默认构造形式 `deque(beg, end);` //构造函数将[beg, end)区间中的元素拷贝给本身。 `deque(n, elem); `//构造函数将n个elem拷贝给本身。 `deque(const deque &deq);` //拷贝构造函数 */ void toprint(const deque<int> &v) { //想要这个函数只完成读的功能,我们可以通过const修饰符来进行限制,只读 for (deque<int>::const_iterator a = v.begin(); a < v.end(); a++) //通过const来修饰迭代器为只读 { //(*a) = 100;//会报错 因为迭代器只读不可修改 cout << (*a

解决从其他地方拷贝过来的Android项目在本机不能运行(报错)的问题

对着背影说爱祢 提交于 2019-12-06 01:44:45
这个问题一般是由gradle版本不同引起的。要解决可以这样: 一、在确保本机Android studio 正常使用的情况下,在本机新建一个Android项目 二、在文件夹中打开新建的Android项目,找到.gradle,gradle, build.gradle, local.properties 这几个文件将他复制替换到报错的项目对应的目录。 三、打开新建项目的app文件夹,找到.gradle文件,复制替换到报错项目的app文件夹。 完成。 来源: https://www.cnblogs.com/BreezeFeng/p/11955555.html

一文让你读懂懂阻塞、非阻塞、同步、异步IO

倖福魔咒の 提交于 2019-12-06 01:24:02
介绍 在谈及网络IO的时候总避不开阻塞、非阻塞、同步、异步、IO多路复用、select、poll、epoll等这几个词语。在面试的时候也会被经常问到这几个的区别。本文就来讲一下这几个词语的含义、区别以及使用方式。 Unix网络编程一书中作者给出了五种IO模型: 1、BlockingIO - 阻塞IO 2、NoneBlockingIO - 非阻塞IO 3、IO multiplexing - IO多路复用 4、signal driven IO - 信号驱动IO 5、asynchronous IO - 异步IO 这五种IO模型中前四个都是同步的IO,只有最后一个是异步IO。信号驱动IO使用的比较少,重点介绍其他几种IO以及在Java中的应用。 阻塞、非阻塞、同步、异步以及IO多路复用 在进行网络IO的时候会涉及到用户态和内核态,并且在用户态和内核态之间会发生数据交换,从这个角度来说我们可以把IO抽象成两个阶段:1、用户态等待内核态数据准备好,2、将数据从内核态拷贝到用户态。之所以会有同步、异步、阻塞和非阻塞这几种说法就是根据程序在这两个阶段的处理方式不同而产生的。 同步阻塞 当在用户态调用read操作的时候,如果这时候kernel还没有准备好数据,那么用户态会一直阻塞等待,直到有数据返回。当kernel准备好数据之后,用户态继续等待kernel把数据从内核态拷贝到用户态之后才可以使用

IDEA2017.3.4 破解到2099年

懵懂的女人 提交于 2019-12-05 23:56:30
1,下载破解文件   链接:https://pan.baidu.com/s/1tykKj_p5ezFcWb-0sELcpw   提取码:lijo 2,拷贝文件   将文件中的 idea.exe.vmoptions,idea64.exe.vmoptions,JetbrainsCrack-3.1-release-enc.jar 这三个文件拷贝到IDEA安装文件的bin目录下    3,修改文件   修改 idea.exe.vmoptions,idea64.exe.vmoptions 的最后一行路径为 JetbrainsCrack-3.1-release-enc.jar 的全路径    4,打开IDEA,输入激活码   打开破解文件中的 激活码.txt,修改你的名字和邮箱,全部拷贝,粘贴到对应位置       5,正常进行剩余安装,安装完成后,选择Help --> Register,可以看到到期时间是2099年    来源: https://www.cnblogs.com/3b2414/p/11951604.html

右值与移动语义

假如想象 提交于 2019-12-05 23:33:39
一、Overloading Rules for Rvalue and Lvalue References 左值引用和右值引用的优先级问题 1、如果只实现了左值引用,那么不能传入右值和const。 void f(X& x); 2、如果只实现了void f(const X& x); 可以接收左值和右值。 3、如果同时实现了void f([const] X& x) 和 void f(X &&x),右值会优先选择移动语义。 总结:如果你的类只提供了拷贝语义,没有提供移动,那么std::move()就调用拷贝操作。 二、没必要 而且不应该为返回值调用std::move操作。 X f(){ X x; ... return x; } 编译器的行为如下: 优先级最高的是 1、如果X有自定义的移动或者拷贝构造,编译器会选择抹掉拷贝或移动构造。具名返回值优化。 如果编译器没有消除构造,那么 2、如果X有移动构造,就会调用移动构造。 3、如果X有拷贝构造,调用拷贝构造。 4、调用缺省的?内存拷贝? 3、返回local object的引用是错误的。 X&& foo () { X x; ... return x; // ERROR: returns reference to nonexisting object } 来源: https://www.cnblogs.com/buddho/p/11950487

shutil 模块

雨燕双飞 提交于 2019-12-05 21:58:49
shutil 模块 压缩文件: py2、py3 """ import shutil abs_file_path = shutil.make_archive( base_name="files/ww", # 压缩包文件路劲 format='tar', # “zip”, “tar” root_dir='codes/luffycity' # 被压缩的文件目录 ) print(abs_file_path) """ 解压:py3 ''' shutil._unpack_zipfile('files/ww.zip', 'xxxxxx/new') shutil._unpack_tarfile('files/ww.zip', 'xxxxxx/new') ''' 解压:py2/py3 """ import zipfile z = zipfile.ZipFile('files/ww.zip', 'r') z.extractall(path='xxxxxx/luffy') z.close() import tarfile tar = tarfile.TarFile('code/www.tar', 'r') tar.extractall(path='/code/x1/') # 可设置解压地址 tar.close() """ shutil 是对文件/文件夹的操作 #!/usr/bin/env python #

深拷贝与浅拷贝

醉酒当歌 提交于 2019-12-05 19:34:38
深拷贝与浅拷贝的区别 之所以会有深拷贝与浅拷贝之分,是因为不同数据类型的数据在内存中的存储区域不一样。 简单来说,假设B复制了A,当修改A时,看B是否会发生变化:如果B也跟着变了,说明这是浅拷贝;如果B没变,那就是深拷贝。 相关名词解释:堆栈,基本数据类型与引用数据类型 堆栈 堆和栈是计算机中划分出来用来存储的区域,其中堆(heap)则是动态分配的内存,大小不定也不会自动释放;而栈(stack)为自动分配的内存空间,它由系统自动释放。存放在栈内存中的简单数据段,数据大小确定,内存空间大小可以分配,是直接按值存放的,所以可以直接访问。 基本数据类型 基本数据类型有:number、string、boolean、null、undefined五类(数据的原始值是大小确定不可变的,所以放在栈内存中) 基本类型的变量名和变量值都存储在 栈内存 中,当B复制A时,栈内存会新开辟一个内存,所以修改A对B无影响(算不上深拷贝,因为深拷贝这个概念是针对较为复杂的object类型数据) 引用数据类型 引用数据类型(Object类)有常规名值对的无序对象{a:1}、 数组[1,2,3]、以及函数等( 类对象 ) 引用数据类型的“变量”名存在 栈内存 中,“变量”值存在于 堆内存 中,但是 栈内存 会提供一个引用的地址指向堆内存中的值。当B对A进行简单拷贝时,其实复制的是A的引用地址,而并非堆里面的值

浅析js中的堆和栈

三世轮回 提交于 2019-12-05 19:33:41
这里先说两个概念: 1、堆(heap) 2、栈(stack) 堆 是堆内存的简称。 栈 是栈内存的简称。 说到堆栈,我们讲的就是内存的使用和分配了,没有寄存器的事,也没有硬盘的事。 各种语言在处理堆栈的原理上都大同小异。堆是动态分配内存,内存大小不一,也不会自动释放。栈是自动分配相对固定大小的内存空间,并由系统自动释放。 javascript的基本类型就5种:Undefined、Null、Boolean、Number和String,它们都是直接按值存储在栈中的,每种类型的数据占用的内存空间的大小是确定的,并由系统自动分配和自动释放。这样带来的好处就是,内存可以及时得到回收,相对于堆来说,更加容易管理内存空间。 javascript中其他类型的数据被称为引用类型的数据 : 如对象(Object)、数组(Array)、函数(Function) …,它们是通过拷贝和new出来的,这样的数据存储于堆中。其实,说存储于堆中,也不太准确,因为,引用类型的数据的地址指针是存储于栈中的,当我们想要访问引用类型的值的时候,需要先从栈中获得对象的地址指针,然后,在通过地址指针找到堆中的所需要的数据。 说来也是形象,栈,线性结构,后进先出,便于管理。堆,一个混沌,杂乱无章,方便存储和开辟内存空间 传值与传址 var arr1 = [1,2,5,8]; var arr2 = arr1 ; var str1