gpt4 book ai didi

.net - 无效 C++/CLI 的 ISO C++ 代码示例

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:06:00 26 4
gpt4 key购买 nike

关于 C++/CLI 是否是 C++ 的超集,我在 Internet 上看到了相互矛盾的答案。

已接受的答案 on this question声称“技术上没有”,但没有提供符合 ISO C++ 的非 C++/CLI 代码示例。关于这个问题的另一个答案引用了一本相反的书。

那么,您能否提供在 C++/CLI 上失败的示例代码的准确答案,或者在此事上引用可信来源(例如 MSDN)?

今天有人提出这个话题,我想告诉自己,但我没有在其他地方找到任何明确的答案!

最佳答案

有效的 C++,无效的 C++/CLI:

int main()
{
int gcnew = 42;
}

gcnewgenericnullptr都是C++/CLI中的保留字;当然,nullptr 在 C++0x 中并不是真正的问题。 Herb Sutter 发表了关于 C++/CLI keywords: Under the hood 的博客2003 年。

值得一提的是,当我处理大型混合代码库(C++ 和 C++/CLI)时,我从未遇到过语法问题或像这样的琐碎问题。 C++/CLI 的巨大问题(当然,在我看来)是 native 代码和托管代码具有完全不同的资源管理范式,在编写混合代码时很容易忘记某些事情需要哪种范式。我修复了很多错误,这些错误要么是由于假设托管资源被确定性地销毁,要么是 native 资源将被垃圾收集器清理。

关于.net - 无效 C++/CLI 的 ISO C++ 代码示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4610671/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com