问题标签 [macros]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - C++ 格式宏/内联 ostringstream
我正在尝试编写一个允许我执行类似操作的宏:FORMAT(a << "b" << c << d)
,结果将是一个字符串 - 与创建 ostringstream、插入a...d
和返回相同.str()
。就像是:
本质上,FORMAT(a << "b" << c << d) == f()
.
首先,我试过:
如果第一项是 C 字符串 ( const char *
),它将以十六进制打印字符串的地址,并且下一项将正常打印。如果第一项是 an std::string
,它将无法编译(没有匹配的 operator <<
)。
这:
给出看似正确的输出,但0
and\b
当然存在于字符串中。
以下似乎有效,但编译时带有警告(获取临时地址):
有谁知道为什么 1 打印 c-string 的地址并且无法使用std::string
? 1和3本质上不是一样的吗?
我怀疑 C++0x 可变参数模板将成为format(a, "b", c, d)
可能。但是现在有办法解决这个问题吗?
eclipse - 是否有用于在 m4 中开发的 eclipse 插件?
谷歌搜索几乎没有出现。
我需要在 m4 中开发一些繁重的东西,我很想在我最喜欢的环境中完成它,其中包含所有的花里胡哨。
几乎每个平台都有用于运行 m4 的软件包,例如windows。所以我知道至少我可以创建一个默认项目并从 CLI 进行测试。但我宁愿不:)
visual-studio - 是否有用于在已处理/未处理的异常上切换中断的 Visual Studio 快捷方式/宏?
我一直在尝试编写一个宏做相当于
- 按 Ctrl+Alt+E 调出异常窗口
- 切换“公共语言运行时异常”的“抛出”列中的文本框
- 打好
如果我记录这个,它只记录一行不做任何事情的宏代码。有人知道怎么做吗?
sql - sql查询导致错误2950
此 SQL 查询由 Microsoft Access 2003 生成,运行时运行良好,但尝试从宏运行时失败。查询中是否有任何明显的错误,或者任何原因它不起作用?
macros - R6RS Scheme 的 make-variable-transformer 有什么好处?
在查看syntax-case
R6RS 中的部分时,我看到了关键字make-variable-transformer
,描述为标识符宏。给出的例子非常少,我不明白为什么它是必要的,或者什么用例需要它。事实证明,寻找其使用的其他示例也很困难。大概它使某种形式的语法转换成为可能,或者更优雅?
scheme - 用于嵌套表达式的方案宏
可以用 Scheme 编写一个宏(define-syntax
例如,使用 ),它将采用如下表达式:
并将这样的表达式作为输出?
当然,对于任意长度。给定这样的模板,我想不出办法:
c++ - 如何用#include 替换这个预处理器宏?
更新: 显然,您希望使用模板或基类而不是宏来执行此操作。不幸的是,由于各种原因,我不能使用模板或基类。
目前我正在使用宏在各种类上定义一堆字段和方法,如下所示:
FIELDS_AND_METHODS
是一个使用字符串化和标记粘贴运算符的多行宏。
我想用下面的东西代替它
这里我#define类的名称(以前是宏的参数),FieldsNMethods.h
文件包含原始宏的内容。但是,因为我是#include,所以在调试时我可以在运行时单步执行代码。
但是,我在“字符串化”和“标记粘贴”文件TYPE_NAME
中的预处理器符号时遇到了麻烦FieldsNMethods.h
。
例如,我想在 中定义类的析构函数FieldsNMethods.h
,所以这需要使用如下的值TYPE_NAME
:
但用TYPE_NAME
它的价值代替。
我正在尝试的可能吗?我不能直接使用字符串化和标记粘贴运算符,因为我不在宏定义中。
macros - 如何为 Notepad++ 编写宏?
我想为 Notepad++ 编写一个宏,它应该分别用 char4、char5、char6 替换 char1、char2、char3。
latex - 是否有一个 LaTeX 命令可以使文本全部小写?
嘿,我正在尝试使用 textsc 命令编写一个命令以在报告的首页上打印今天的日期,但是今天的日期大写了 12 月。
任何帮助将不胜感激。
ide - 录制宏的 IDE 优势是什么?
正如标题所说,我看到很多编辑将宏录制作为一项功能吹捧,但我自己却找不到利用这些功能的方法。那么你能用它做什么呢?您可以记录鼠标移动和/或击键的类型?对外面的人真的有那么大的帮助吗?具体来说,我处理具有许多内置“填充”功能的 Eclipse,所以我真的看不出有什么优势。