25 十月 2026
我们宣布对 CodePorting.Translator Cs2Cpp 进行重大架构更新。新一代转换器已完全重写以利用 Roslyn,取代了之前版本中使用的旧版 NRefactory 库。这一转变解决了旧版本仅限于 C# 5 的重大架构限制。借助 Roslyn,新转换器原生支持现代语言特性——目前最高支持到 C# 13——并且随着语言的不断发展,它已准备好支持未来的 C# 版本。
如果您以前在尝试将现代 C# 代码库移植到 C++ 时遇到过限制,本次发布将消除这些障碍,为您的项目开启新的可能性。
向 Roslyn 语义分析的过渡解锁了对大量以前不支持的强大语言特性的支持。新转换器能够无缝处理复杂的现代模式,包括:
async/await(转换为封装在 Task 模板中的状态机)和 yield 运算符。with 关键字以及主构造函数。Span<T>、Memory<T> 和 stackalloc。?. 和 ?[]) 以及自动属性初始化。有关这些现代构造如何映射到 C++ 的详细技术说明,请参阅新功能文档。
升级您的转换管道旨在简单直接。新一代转换器可作为您现有工作流的直接替代品。它接受相同的命令行参数,读取相同的配置文件,并尊重您已经熟悉的相同代码属性。
由于新引擎要求 C# 项目在语义上正确,您现在可以利用 Roslyn 编译器的全部功能来确保您的代码被高精度地转换。无论您是将其集成到现有的 CI/CD 管道中还是在本地进行测试,迁移路径都是平滑且有详细文档记录的。
如果您的 C# 项目以前对于我们的转换器来说过于现代,那么现在是再次尝试的最佳时机。
有关转换项目和构建环境的详细说明,请参阅迁移指南。
我们发布了一个全面的文档门户,帮助您设置新转换器、了解其功能并将其集成到您的构建脚本中。