在主要从事 .NET 开发一段时间后,我需要以跨平台的方式使用 C++ 进行工作。
我不想放弃 Visual Studio,所以我的希望是可以使用 Visual Studio 和 Windows 目标作为测试构建,然后通过虚拟机定期在 Linux 或 Mac 上测试代码。
有没有人有经验知道如何最好地设置这个?
我特别想知道如何确保项目文件与可能在 *nix 平台上需要的 make 文件保持同步。
在主要从事 .NET 开发一段时间后,我需要以跨平台的方式使用 C++ 进行工作。
我不想放弃 Visual Studio,所以我的希望是可以使用 Visual Studio 和 Windows 目标作为测试构建,然后通过虚拟机定期在 Linux 或 Mac 上测试代码。
有没有人有经验知道如何最好地设置这个?
我特别想知道如何确保项目文件与可能在 *nix 平台上需要的 make 文件保持同步。
/W3
应该足够),并非常小心地编写代码。在我看来,GCC更善于让您遵循标准(-Wall -Wextra -pedantic -std=c++11
),但您要指定MSVC。std::size_t
,std::(u)intptr_t
等,而不是普通的 int
,long
,unsigned
:这些会导致灾难,而Windows API过多地使用这些类型。我特别好奇您是如何确保项目文件与* nix平台上可能需要的make文件保持同步。
由于微软决定从VS中删除对makefile的支持,您无法直接使用它。相反,您可以使用像CMake这样的其他工具来生成VS项目文件,并确保正确设置它。
这是一个6年前的古老问题,但我想指出的是,微软现在有官方工具可以在Visual Studio中处理Linux C++:
https://blogs.msdn.microsoft.com/vcblog/2016/03/30/visual-c-for-linux-development/
此外,Windows 10现在具备在Windows内运行Linux的能力,因此对于仍然有兴趣在Visual Studio上开发C++ for Linux的人来说,这将使您的生活变得更加轻松。三年后...
如果你使用的是非 Express 版本,使得可以使用插件,那么有诸如WinGDB和VisualGDB之类的工具可以帮助你。
Duckduckgo 还告诉我有一个名为make-it-so的项目,但是它已经过时了。不过由于新的基于 XML 的项目格式应该更易于创建,现在可能会有其他类似的工具。