我可以在托管代码上使用 DEBUG_NEW 吗?

发布于 2024-11-27 07:22:44 字数 177 浏览 1 评论 0原文

我可以使用:

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

在托管代码中?
喜欢 C# 还是托管 C++?

can i use:

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

in managed code?

like c# or managed c++?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

倾城泪 2024-12-04 07:22:44

这在 C++/CLI 中应该和在标准 C++ 中一样有效,也就是说,官方不允许重新定义诸如 new 之类的关键字,但大多数编译器都会允许您这样做。

使用 __FILE__ 没有问题,但如果您想从托管代码中使用它,您可能希望将其存储在托管字符串中。

That should work in C++/CLI just as well as it does in standard C++, which is to say, it's officially not allowed to redefine keyword such as new, but most compilers will let you do it.

With __FILE__ there is no problem, although you probably want to store it in a managed string, if you want to use it from managed code.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文