小编Ste*_*den的帖子

WiX v4的状态是什么?

我真的觉得我不应该问SO这样的问题来获得这样的基本信息,但我无法在任何地方找到可靠的来源.

WiX v4发布了吗?开发中?在Beta中?还在设计?

很多人似乎已经在使用WiX v4,正如有关它的SO问题所证明的那样.它在WiX网站上有一个官方发布页面,没有提到"Beta"或"Release Candidate"等,如下:http://wixtoolset.org/releases/v4-0-0-5205/

但是,GitHub上没有针对v4发布的版本:https://github.com/wixtoolset/wix4/releases

Wix主页仍然指示您下载v3.

其中一个开发者的博客最近有一篇关于v4的帖子,它使用了将来时态语言,比如"将拥有"和"应该支持".

但最糟糕的是,当前版本的WiX visual studio集成工具具有v4模板,这使得v4似乎得到官方支持!

当你尝试构建其中一个模板时,构建错误The WiX Toolset v4 build tools must be installed ... To download WiX Toolset v4, see http://wixtoolset.org/releases/尽管http://wixtoolset.org/releases/包含专门针对v3的下载!

这是一堆疯狂的混合信息.

是否有某些地方正式说明了WiX v4的状态?

wix

26
推荐指数
3
解决办法
7021
查看次数

为什么c ++ regex_match函数需要在函数外定义搜索字符串?

我正在使用Visual Studio 2013进行开发,它使用了Microsoft的c ++编译工具v12.
以下代码执行正常,将"foo"打印到控制台:

#include <regex>
#include <iostream>
#include <string>

std::string get() {
    return std::string("foo bar");
}

int main() {
    std::smatch matches;
    std::string s = get();
    std::regex_match(s, matches, std::regex("^(foo).*"));
    std::cout << matches[1] << std::endl;
}
// Works as expected.
Run Code Online (Sandbox Code Playgroud)

使用字符串"s"替换"get()"函数的相同代码在运行时抛出"字符串迭代器不兼容"错误:

#include <regex>
#include <iostream>
#include <string>

std::string get() {
    return std::string("foo bar");
}

int main() {
    std::smatch matches;
    std::regex_match(get(), matches, std::regex("^(foo).*"));
    std::cout << matches[1] << std::endl;
}
// Debug Assertion Failed!
// Expression: string iterators incompatible
Run Code Online (Sandbox Code Playgroud)

这对我来说毫无意义.谁能解释为什么会这样?

c++ regex visual-studio

7
推荐指数
1
解决办法
396
查看次数

标签 统计

c++ ×1

regex ×1

visual-studio ×1

wix ×1