- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
在许多 C 和 C++ 文件中,我都看到过这样的宏:
#ifdef X
#undef X // no statements in between
#endif
我觉得,简单写就够了:
#undef X
如果宏 X
没有定义,那么 #undef
应该没有效果。
如果我只想取消定义一个宏,是否可以ok放置独立的#undef
?无论如何,这会使编码实践变得糟糕吗?
最佳答案
参见 ISO C99 6.10.3.5 第 2 段。
A preprocessing directive of the form
# undef identifier new-line
causes the specified identifier no longer to be defined as a macro name. It is ignored if the specified identifier is not currently defined as a macro name.
偶数 Visual C++ 6 (因不符合标准而臭名昭著)允许这样做:
You can also apply the
#undef
directive to an identifier that has no previous definition. This ensures that the identifier is undefined. Macro replacement is not performed within#undef
statements.
关于c++ - 我们什么时候需要在#undef 之前使用#ifdef?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9090536/
几年前,当我最初学习 Perl 时,我发现自己想说一些类似的话: sleep .07; 但这实际上行不通。 有人教我使用: select undef, undef, undef, .07; 反而。 我
undef $x is different from $x = undef .我的印象是两者都会触发垃圾收集和释放内存,但似乎 $x = undef 不会这样做。 这是语言错误吗?在执行 $x = u
我正在使用铁路 api 构建 Web 应用程序,在提交火车号时我试图显示数据但出现上述错误。实际上我在获取数据时使用了 if else 条件。 下面是代码。 import React, { Com
我在 Perl 中有以下(从错误中理想化的)简短脚本: my %metadata = undef; if (defined %metadata) { print "defined"; } 出于
Julia 中检查数组条目是否为 #undef 的最佳方法是什么? 例子: julia> a = Array(Vector,2) julia> isdefined(a[1]) # fails jul
我有一个全局扩展,它定义了一个名为“is”的方法。我遇到的问题是 ESLink 将其标记为“no-undef”;尽管它在运行时可用。 禁用规则对我来说不是一个选择。我宁愿定义它以便 ESLint 可以
在 Perl 中读取配置文件时,可能会出现某行无效且不需要将其添加到我的有效行数组中的情况。由于我在这里使用 for 循环,因此即使无效行也会创建一个 undef 条目。之后我怎样才能将它们全部删除?
有时候我想写: my $var = shift // undef; # argument is optional # or my $va
我定义了一堆宏,它们只在项目的一小部分范围内发挥作用。我想取消定义它们,这样它们就不会污染全局命名空间,但 Visual Studio 仍然会在其他文件中的#undef 之后确认它们的存在。即: //
这个问题在这里已经有了答案: 关闭 11 年前。 Possible Duplicate: undef - Why would you want to undefine a method in rub
我正在将一些参数传递给函数,其中一个可能未定义。 $a = ($config->function(param('a'),'int')); 我的模块包含一个如下所示的函数: sub function{
我在一个数组中定义了一些元素: my @arrTest; $arrTest[0]=1; $arrTest[2]=2; #Result for @arrTest is: (1, undef, 2) if
有什么办法可以从 no-undef 中排除特定模式吗?错误。我试过 'no-undef': [2, { ignoreBuiltinGlobals: ['app'] }]哪里app是由 webpack.
我使用教程来学习 React,但很快就卡住了。在教程中,他们使用了这段代码: import React, { Component } from "react"; class Counter exten
我有一个 Moose 类,它的属性起到一定的作用: has foo => (is => 'rw', does => 'Foo::Bar'); 现在我如何更改声明以允许 undef ?我试过 does
我今天似乎很傻,或者我有一个很奇怪的问题。请考虑以下代码: #!/usr/bin/perl use strict; use warnings; use warnings::unused; use wa
我是 react 新手。我的应用程序运行正常,但添加 eslint(airbnb) 后,我的应用程序无法编译。 export default class HelloWorldComponent ext
尝试编译我的应用程序时出现以下错误 - 'getRestaurants' 未定义 no-undef 我无法查明为什么没有为 zipCodeToCoords 定义 getRestaurants 我有一个
我制作了cardList,想通过 map 将卡片添加到cardlist中,但出现此错误 import React from 'react'; import Card from './Card'; co
我想在表的列中插入 null。 哪一个代表 null? undef 或空字符串 ''。 应该使用哪一个,为什么?我知道已定义并且我可以检查它。 但我更多的是从数据库的角度来看。 哪一个更恰本地表示nu
我是一名优秀的程序员,十分优秀!