我正在使用MS Visual Studio 2008在C++中进行一些开发工作,目前我们有一个版本函数,它返回一个代表版本号的硬编码字符串.我想找出一种方法,这样它可以从1开始,而不是硬编码的数字,每次我进行调试或发布版本时都会增加1(或者甚至更好,跟踪调试版本和发布版本号).或者,如果无法做到这一点,请使用当前日期/时间作为版本号.
请注意,因为将有几个人在使用该项目并使用SVN,所以代码必须与计算机无关(这意味着如果我目前使用的是版本100,我的同事的最后版本是90版,那么下一次(之后)我检查代码,我的同事拿出代码),他下一次编译的版本号应该是101而不是91.)
能否请你帮忙?
如果您使用的是TortoiseSVN,则可以在预构建事件中使用subwcrev.exe将当前修订号写入源文件.
因此,签入文件version.template.hpp
并添加类似的内容
const string version = "13.12.0.$WCREV$";
添加项目预构建事件
subwcrev.exe "$(SolutionDir)." "$(ProjectDir)version.template.hpp" "$(ProjectDir)version.hpp"
并包括生成的文件#include "version.hpp"
.