在Visual Studio 2012中有使用委托构造函数的方法吗?

Is there a way to use delegating constructors in Visual Studio 2012?

本文关键字:构造函数 方法 Studio Visual 2012      更新时间:2023-10-16

查看c++ 11的新特性,委派构造函数似乎对我的情况特别有用。

不幸的是,我需要使用Visual Studio。我正在做的项目有几个月的截止日期,使用实验性/破碎的编译器并不关心我。是否有一个版本的Visual c++可以让我做构造函数委托?

参见http://www.stroustrup.com/C + + 11 faq.html #继承

是的,有一个支持委托构造函数的编译器的测试版——Visual c++ compiler 2012年11月CTP。

与此同时,请尝试

#define INHERIT_CONSTRUCTOR(BaseName,DerivedName) template <class... Args> DerivedName(Args&&... args) : BaseName(std::forward<Args>(args)...) { }

一旦你通过Karel Petranek给出的链接成功安装了CTP,只需创建任何旧的c++项目。

然后,在项目的"属性页>配置属性>通用>平台工具集"下,选择"Microsoft Visual c++ Compiler Nov2012 CTP (v120_CTP_Nov2012)"。

。现在你可以在VS2012中使用这些额外的c++编译器特性了。

你不必再安装CTP了。
Visual Studio 2013将支持委托构造函数,你可以试试预览版,它现在已经可用了。