安装svn
yum install svn
配置
建立svn目录
mkdir /data/svn
创建仓库
svnadmin create /data/svn/xianji-server
进入配置目录
cd /data/svn/conf
配置权限
vi authz
[/]
admin = rw
配置账号密码(添加admin用户,密码admin)
vi passwd
[users]
admin = admin
svn服务配置
vi svnserve.conf
anon-access = read #匿名用户可读
auth-access = write #授权用户可写
password-db = passwd #使用哪个文件作为账号文件
authz-db = authz #使用哪个文件作为权限文件
realm = /var/svn/test # 认证空间名,版本库所在目录
启动SVN版本库
svnserve -d -r /var/svn
访问
svn checkout svn://127.0.0.1/xianji-server
阅读此文
使用override
强制说明该函数为重写版本
增强可读性
确保该函数是重写父类的虚函数,避免拼写错误,类型不匹配,导致没有形成多态!
可以更加清楚地表明该函数的用途,假设子类函数与父类函数完全一样,没有override
辅助说明,则使用者很可能误用!
定义和派生抽象类的利器,可在编译时发现诸如:修改了基类中某虚方法的参数列表后,忘记在其派生类中做出相应修改等各类相关错误。
改进的大于号解析
定义模板实例时,不再需要小心地在多个连续的大于号之间添加空格了。
优点
不必再担心模板定义中的“>>”被解析为右移操作。
阅读此文
错误信息
@ERROR: chroot failed
rsync error: error starting client-server protocol (code 5) at main.c(1635) [Receiver=3.1.1]
原因:
rsyncd.conf中的path路径所设的那个目录并不存在所致.
阅读此文
在C++中,是指在一个类定义中,成员函数引用成员变量的位置先于成员变量定义的位置。
1 2 3 4 5 6 7
| class C { public: void mutator(int x) { myValue = x; } int accessor() { return myValue; } private: int myValue; };
|
允许前向引用大大增加了编译器的复杂度与内存需求,并且使它不能成为一次通过型的编译器。
参考
- 维基-前向声明
阅读此文