0
我想使用宏來爲C++項目自動生成構建版本。在資源文件中使用宏
如果我這樣做,一切工作正常。
Versioning.h
...
#define VERSION_MAJOR 1
#define VERSION_MINOR 0
...
MyApp.rc
...
#include "Versioning.h"
VS_VERSION_INFO VERSIONINFO
FILEVERSION VERSION_MAJOR, VERSION_MINOR, 0, 0
PRODUCTVERSION VERSION_MAJOR, VERSION_MINOR, 0, 0
FILEFLAGSMASK 0x3fL
...
但是,如果我嘗試包括任何更復雜的,如數學中,編譯器生成錯誤
#define VERSION_MAJOR (2/2)
error RC1013: mismatched parentheses
error RC2104: undefined keyword or key name:/
我需要用更復雜的數學表達式,調用其他類,從宏觀中執行字符串比較,等等。
我的猜測是我寫的宏沒有問題,而是資源文件處理宏的方式有問題。
任何想法?
注:我使用Visual Studio 2013旗艦版更新3
這看起來像是一個醜陋的解決方案: -/ – 2014-10-07 19:46:03
如果您對設置版本號有一些奇怪的要求,請編寫一個程序,用「工作」版本和您需要的值寫出一個文件。 – crashmstr 2014-10-07 19:47:19
@crashmstr我正在嘗試使用Visual Studio用於爲.NET應用程序自動生成版本號的相同算法。 – 2014-10-07 19:49:59