大家好,
我很高兴地宣布Visual C++库团队完成了STL/CLR的另一个主要更新,并将其与Visual C++ OrCAS集成。根据内部集成的时间表,您应该期望在2月或3月的CTP for visualstudio(代号Orcas)中看到这个STL/CLR的新版本。我们还在网上更新STL/CLR规范 MSDN公司 . 请检查一下房间 网站 最新版本的规范将于1月底发布。
以下是与的版本相比,此更新的主要改进的简要总结 9月STL/CLR CTP :
– 我们完成了集合适配器的实现,它提供了一种统一的机制来适应IEnumerable、ICollection、IList和IDictionary.Net Framework接口及其作为STL/CLR容器的通用对等接口。这些适配器提供与STL/CLR算法兼容的迭代器。适配器和迭代器只能在一个.Net程序集中使用,不支持将它们从.Net程序集中传递到另一个程序集中。下面是使用这种适配器的快速示例:
#包括
…
使用命名空间 系统::集合::通用;
…
无效 函数(IList)< 内景 >^(列表)
{
cliext::集合适配器
cliext::列表< 内景 >myList(cont.size());
cliext::transform(cont.begin(),cont.end(),myList.begin(),cliext::bind2nd(cliext::plus)< 内景 >(),2));
};
– 我们引入了一个名为makeu collection()的迭代器范围适配器。它将迭代器范围(对)表示为.Net Framework ICollection/IEnumerable接口及其泛型对应项。它只能用于从创建适配器时传递给它的两个迭代器所表示的容器中读取数据。 下面是如何使用它的另一个快速示例:
#包括
…
使用命名空间系统::集合;
使用名称空间cliext;
…
ICollection^piColl=makeu collection(vect.begin(),vect.end());
…
Generic::ICollection^piColl2=makeu collection(itFirst,itLast);
– STL/CLR程序集(Microsoft.VisualC.Stlclr.Dll)不是.Net Framework 3.5的一部分,它将在安装了.Net Fx 3.5的任何计算机上可用。
– &不英国标准普尔; 我们更新了cliext::map<>和cliext::hash_map<>上IDictionary<>和IDictionary
– 我们稍微改变了cliext::pair的实现,使其行为更类似于STL库中的std::pair。
– 针对每个客户报告的问题采取行动,这导致了一些修复和设计更改。感谢您的反馈,请继续发送给我们!
在这个阶段,STL/CLR被我们称为Orcas发行版的“功能完整”,这意味着初始设计的所有部分都得到了实现和测试。在Orcas产品周期的剩余时间里,团队将处理客户报告的问题和小的设计变更(如果客户报告的话)。主要的设计更改很可能要等到下一个版本,但请继续向我们发送您的想法和建议,我们可以如何改进STL/CLR。
如果您已经开始考虑使用STL/CLR,请确保在visualstudioorcas的CTP中发布它。一如既往,如果您有任何反馈,请让我们知道。你可以在网上打开报告 在此处连接网站或发表评论。 我们期待着您的来信!
尼古拉·杜达尔
项目经理
Visual C++团队
http://blogs.msdn.com/nikolad/