编译 C++ 的缺点是什么? 带有 /clr 的项目:可以安全地启用单元测试吗?
我想向我们的 C++ 产品引入单元测试,并想研究尝试使用基于 CLR 的单元测试的优缺点。 我读到,如果使用 /clr:safe 选项进行编译,则可以调用现有的 C++ 代码。
我严格来说是一名 .NET 开发人员,因此我不知道这将如何影响我们的代码库。 在尝试将其介绍给 C++ 团队之前我应该了解哪些信息?
I would like to introduce unit testing to our C++ product and wanted to investigate the pros and cons of trying to use the CLR-based unit tests. I've read that if you compile with the /clr:safe option, you can call your existing C++ code.
I'm strictly a .NET developer, so I'm at a loss for how this would affect our codebase. What should I know about before I try to introduce this to the C++ team?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这根本行不通。 C++ 代码在 /clr:safe 下将无法编译; 几乎每一行都会出错。 /clr:safe 为您提供一种基本上与 C++ 不共享数据类型的语言。
It's not going to work, at all. The C++ code will not compile under /clr:safe; pretty much every line will give an error. /clr:safe gets you a language that basically shares no datatypes with C++.
/clr:safe 将允许您使用“C++.NET”,这与“C++”团队使用的不太可能相同。 除非他们愿意重新编码以使用“.NET C++”(对于初学者来说,它具有用于“堆上的新对象”的 ^ 运算符),否则他们的东西将无法工作。
/clr:safe will allow you to use "C++.NET", which is not likely the same thing that a "C++" team works with. Unless they're willing to recode to use ".NET C++" (which has the ^ operator for 'new objects on the heap' for starters) their stuff won't work.