摘要:尊敬原作者,本文摘自飞扬天下 do...while(0)的妙用在C++中,有三种类型的循环语句:for, while, 和do...while, 但是在一般应用中作循环时, 我们可能用for和while要多一些,do...while相对不受重视。 但是,最近在读我们项目的代码时,却发现了do...while的一些十分聪明的用法,不是用来做循环,而是用作其他来提高代码的健壮性。1. do...while(0)消除goto语句。 通常,如果在一个函数中开始要分配一些资源,然后在中途执行过程中如果遇到错误则退出函数,当然,退出前先释放资源,我们的代码可能是这样: version 1 boolExe.
阅读全文
摘要:首先,你必须创建一个Git repository(Git仓库)。Git repository是存放你工程文件数据的地方。有两种方法可以创建Git repository,第一种是通过已经存在的目录创建一个新的Git repository,例如一个新的工程。第二种方式是克隆一个公开的公用的Git repository,如果你想拷贝一个工程并和其他人一起开发这个工程的话。下面将会介绍这两种方式:git init initializes a directory as a Git repository通过简单的在已存在的目录路径上执行git init,就可以创建该目录的Git repository了。例
阅读全文
摘要:过去你可能使用过像Subversion、Perforce或者其它SCM(Software Configuration Management,软件配置管理),但是Git对于版本的控制跟你之前用过的这些版本控制软件有很大的不同。抛弃对版本控制工作流程的设想,并了解Git自己的处理方式,往往更有利于学习Git。 好,那我们开始吧。假如你现在正在设计一个新的源代码管理系统,在你使用相关管理工具之前,你会如何处理基本的版本控制呢? 你有可能只是简单的拷贝工程目录: $ cp -R project project.bak 那样,当文件变得一团糟的时候你可以很容易的恢复文件,或者对比目录拷贝前后文件的改..
阅读全文
摘要:一直有写技术博客的想法,却总是未能付诸于行动。如今终于踏出了重要的一步,入住博客园。新的起点,新的开始,希望在这边片园地上获取更多知识,分享更多知识,还有认识更多朋友:)
阅读全文