`
文章列表
左值(地址)和右值(地址的内容):    1. 使用数组_直接引用:因为符号表中,符号a对应的值就是a数组的首地址。 2. 使用指针_间接引用:因为符号表中,符号p的值是“地址”,需要从内存中取得对应的“地址的内容”,然后才能像“访问数组元素”那样进行元素的访问。  混合两种方式:       代码示例:   #include <iostream> using namespace std; int main(){ //1. 理解"左值"(数组是"不可修改的左值")和"右值" / ...
本节主要是为了写二叉树类型题目练手的代码,重点培养运用“指针”。   《编程之美》3.9重建二叉树 : 已知前序和中序,重建二叉树 #include <iostream> using namespace std; #define TREELEN 6 struct NODE{ NODE* pLeft; NODE* pRight; char chValue; }; void ReBuild(char* pPreOrder, char* pInOrder, int nTreeLen, NODE** pRoot){ if(nTreeLen<1) ...
    stl容器区别: vector list deque set map [转]     转自:http://blog.csdn.net/lmh12506/article/details/8445025   在STL中基本容器有: vector、list、deque、set、map   set 和map都是无序的保存元素,只能通过它提供的接口对里面的元素进行访问   set:集合, 用来判断某一个元素是不是在一个组里面,使用的比较少map:映射,相当于字典,把一个值映射成另一个值,如果想创建字典的话使用它好了底层采用的是树型结构,多数使用平衡二叉树实现,查找 ...
vector排序,支持子数组排序,sort(vec.begin(), ve.begin()+num, cmp) #include<iostream> #include<vector> #include<list> #include <algorithm> using namespace std; typedef struct _MyNode{ int x; int y; //必须用到类型名称_MyNode,这就是使用typedef的好处 _MyNode(int x, int y){ this-> ...
本文介绍svn revert及其子命令的使用   子命令svn revert      取消所有的本地编辑。子命令svn revert PATH...描述     Reverts any local changes to a file or directory and resolves any conflicted states. Svn revert will revert not only the contents of an item in your working copy, but also any property changes. Finally, you can use ...
关于“竞态条件”的理解详见http://en.wikipedia.org/wiki/Race_condition   转载文章: [本文是我对Java Concurrency In Practice第二章的归纳和总结,  转载请注明作者和出处,  如有谬误, 欢迎在评论中指正. ]   多线程环境下,无需调用方进行任何同步处理也能保证正确性的类是线程安全的类   无状态的对象是线程安全的。无状态是指没有成员变量。由于方法的局部变量都是在线程私有的栈中分配的,因此在一个线程中调用无状态对象的方法,不会影响到其他线程。   race condition: 正确性依赖于事件发生的 ...
首先研究下Collection下的同步和非同步,例如ArrayList       List 接口的大小可变数组的实现。实现了所有可选列表操作,并允许包括 null 在内的所有元素。除了实现 List 接口外,此类还提供一些方法来操作内部用来存储列表的数组的大小。(此类大致上等同于 Vector 类,除了此类是不同步的。)size、isEmpty、get、set、iterator 和 listIterator 操作都以固定时间运行。add 操作以分摊的固定时间 运行,也就是说,添加 n 个元素需要 O(n) 时间。其他所有操作都以线性时间运行(大体上讲)。与用于 LinkedList 实现 ...
-脏读:脏读又称无效数据的读出,是指在数据库访问中,事务T1将某一值修改,然后事务T2读取该值,此后T1因为某种原因撤销对该值的修改,这就导致了T2所读取到的数据是无效的。脏读就是指当一个事务正在访问数据,并且 ...
  转自http://see.xidian.edu.cn/cpp/biancheng/view/61.html 全局变量和局部变量 在函数这一章节中,我们说过函数体内声明的变量仅在该函数体内有效,别的函数是无法使用的。并且在函数运行结束后,这些变量也将消失了。我们把这些 ...
转自http://learn.akae.cn/media/ch18s05.html 5. ELF文件 请点评 ELF文件格式是一个开放标准,各种UNIX系统的可执行文件都采用ELF格式,它有三种不同的类型: 可重定位的目标文件(Relocatable,或者Object File) 可执行文件(Executable) 共享库(Shared Object,或者Shared Library) 共享库留到第 4 节 “共享库”再详细介绍,本节我们以例 18.2 “求一组数的最大值的汇编程序”为例讨论目标文件和可执行文件的格式。现在详细解释一下这个程序的 ...
转载自:http://blog.csdn.net/weiwangchao_/article/details/7165467   先来总结一下Sam看这篇文章的要点:   1. 函数名称 不能完全标识 一个函数;因此我们用“函数签名(function signature)”来唯一标识一个函数 2. “函数签名”经过不同“编译器/链接器”的“名称修饰(name decoration)”得到不同的“修饰后名称(decorated name)”。由于不同编译器采用不同的名字修饰方法,必然会导致由不同编译器产生的目标文件无法正常链接,这是导致不同编译器之间不能互操作的主要原因之一。 3. ...
原创,装载请标明引用地址,欢迎拍砖        1. 背景:        嘉龙在bprofile函数级别性能测试中抱怨:没有针对每个函数消耗cpu时间的统计。于是据此我做了一点研究:       (1)    bprofile实际上是取N个时间点进行 ...
1. Linux的fork()使用写时复制(略)         传统的fork()系统调用直接把所有的资源复制给新创建的进程。这种实现过于简单并且效率低下,因为它拷贝的数据或许可以共享(This approach is significantly naïve and inefficient in that it copies much data that might otherwise be shared.)。更糟糕的是,如果新进程打算立即执行一个新的映像,那么所有的拷贝都将前功尽弃。Linux的fork()使用写时拷贝(copy-on-write)页实现。写时拷贝是一种可以推迟甚至避 ...
转自:http://blog.csdn.net/windone0109/article/details/4857044   版本冲突原因: 假设A、B两个用户都在版本号为100的时候,更新了kingtuns.txt这个文件,A用户在修改完成之后提交kingtuns.txt到服务器,这个时候提交成功,这个时候kingtuns.txt文件的版本号已经变成101了。同时B用户在版本号为

svn命令使用

另见好文: 【SVN使用log,list,cat,diff查看所有及特定文件版本信息】http://blog.csdn.net/zll01/article/details/4178041 【SVN代码回滚】http://www.cnblogs.com/jndream/archive/2012/03/20/2407955.html   svn使用手册见附件   创建版本库,以及将一个工程加到版本库中: #0. 创建版本库 $ svnadmin create sam_repo #1. 创建工程的最初版本 $ pwd /home/work/user/sam/tmp/svn ...
Global site tag (gtag.js) - Google Analytics