腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
文章
问答
(9999+)
视频
沙龙
1
回答
define
宏
中
的
尾随
逗号
c
、
c-preprocessor
#
define
LIST_ENTRY(_type)\static int (*func[])(int x) = LIST_ENTRY(foo)0在C
中
,这个
尾随
的
逗号
在语法上有效吗?
浏览 59
提问于2020-11-12
得票数 0
回答已采纳
2
回答
从
宏
的
参数
中
移除最后
尾随
逗号
c++
、
c-preprocessor
、
c++20
我需要从
宏
参数列表
中
删除最后一个
尾随
逗号
(因为它们最终将被扩展为模板参数,其中不允许
尾随
逗号
)。我尝试过使用varargs和__VA_OPT__
的
不同组合,但我似乎无法做到这一点。例如: arg __VA_OPT__(,) discard_trailing_comma(__VA_ARGS__) discard_trailing_comma(1, 2, 3,
浏览 10
提问于2022-06-07
得票数 10
回答已采纳
1
回答
可变模板
的
默认参数如何起作用
c++
、
c++11
、
variadic-templates
上下文是c++
中
的
反射系统。这个问题
的
简要解释是这样
的
。我有这两个结构。一个是表示ClassType类型
的
多个父类,另一个是表示孤立类( ClassType类型
的
类,没有父类)。ParentTypeList>{struct Parents<ClassType>}; 然后,在要反映
的
类
的
声明
中<
浏览 2
提问于2011-07-28
得票数 0
回答已采纳
2
回答
C预处理器
宏
扩展自身
c
、
gcc
、
c-preprocessor
我相信我
的
问题
的
答案与有关。但是,我在将解决方案应用于我
的
用例时遇到了困难。我
的
职能是:我有一个
宏
,它与它一起运行:在我找到这样
的
一条线之前一切都很好:我
的</em
浏览 1
提问于2020-06-28
得票数 1
回答已采纳
2
回答
如何允许
宏
中
可选
的
后缀
逗号
?
macros
、
rust
下面是一个我想要
的
合成例子: $($Variant),*, }此代码编译,但如果向其添加
逗号
:// ^($Name:ident { $($Variant:ident,)* }) //
浏览 1
提问于2017-03-31
得票数 63
回答已采纳
2
回答
如何在C++
宏
参数中使用括号?
c++
、
macros
、
escaping
、
c-preprocessor
、
preprocessor-directive
对于
宏
,我需要在实际参数中使用括号,但是括号似乎改变了分隔
宏
参数
的
逗号
的
行为。// Desired result: A && B // Actual result
浏览 0
提问于2016-10-14
得票数 2
回答已采纳
2
回答
C++预处理
宏
循环__VA_ARGS__ 1与2+参数
c++
、
macros
我正在使用这个中
的
宏
,遍历我
的
参数。一切都很好!但是,是否有办法将这两种CCB_CREATE和CCB_CREATE_MORE结合起来呢? 我需要提取第一个参数object_type来编写额外
的
代码。为了解决这个问题,我又创建了一个
宏
来处理那个CCB_CREATE(Type1)。希望找到一个聪明
的
解决方案,将这两者结合成一个优雅
的
宏
。有什么想法吗?#
define
INSERT_LOADER_MAP(object_type) loader
浏览 0
提问于2013-10-18
得票数 8
回答已采纳
2
回答
如何制作一个可以不带参数调用
的
__VA_ARGS__
宏
?
c
、
variadic-functions
我有一个
宏
:这正是我想要
的
。我
的
问题是我不能用:因为这一范围扩大到: printf("%lu %s:%s:%i %s " "got here", ms(), __FILE__, __func__, __L
浏览 0
提问于2020-05-27
得票数 1
回答已采纳
1
回答
去除
宏
扩展
的
尾随
逗号
c++
、
c
、
gcc
、
preprocessor
我有一个使用
宏
生成类
的
“系统”(不幸
的
是,没有其他方法)。在某些情况下,例如对于初始化器列表,这会导致一个我想要去掉
的
尾随
逗号
: REMOVE_TRAILING_COMMA(FOO) --> expands to a, b, c, d, e, f, g, h
宏<
浏览 17
提问于2021-02-13
得票数 0
回答已采纳
1
回答
将CUDA内核调用作为参数
宏
传给预处理器
宏
时,预处理器
宏
中
的
参数数量不正确
cuda
、
macros
、
c-preprocessor
、
preprocessor
、
nvcc
我有下面的
宏
#
define
TIMEIT( variable, body ) \body; \ variable = omp_get_wtime但是,
宏
调用对
逗号
敏感,CUDA内核调用(使用triple chevron语法)会使预处理器认为传递给
宏
的
参数超过2个。 有什么办法可以解决这个问题吗?
浏览 13
提问于2020-01-17
得票数 0
回答已采纳
3
回答
C/C++预处理器
宏
可以有默认参数值吗?
c++
、
c
、
macros
、
c-preprocessor
我们可以为
宏
参数指定默认参数值吗? 我知道没有任何类型检查,所以我希望默认值只是预处理器在未指定参数值
的
情况下用于
宏
扩展
的
一些文本。
浏览 3
提问于2014-11-21
得票数 16
1
回答
忽略#
define
宏
调用
中
的
逗号
objective-c
、
macros
我创建了一个特殊
的
控制台日志函数
宏
。它成功地工作,除非参数中有
逗号
,即使它是另一个表达式
的
一部分,即不是另一个参数。我认为这是因为
宏
是在预处理阶段扩展
的
,所以语义分析还没有发生,所以还没有理解
逗号
不是另一个参数。我
的
意思是: #
define
FANCY_LOG(message) [MyLogger logDebug:message withClassAndMethodName: __PRETTY_FUNCTION, planet]);
浏览 115
提问于2019-07-26
得票数 0
1
回答
C
宏
:使用字符串和数字
的
连接选择
宏
c
、
macros
、
c-preprocessor
、
c-strings
我有大量
的
宏
(不是我
的
)
尾随
着数字:#
define
MACRO_2 do_something2();#
define
TO_STRING(x) #x我希望能够选择所需
的
<
浏览 3
提问于2017-03-28
得票数 0
回答已采纳
1
回答
将变量名作为字符串传递给具有默认参数
的
函数
c++
、
stringify
、
variable-names
、
default-parameters
,即两次传递变量,一次在引号
中
: printf("%s : '%s'\n", VARASSTR它使用局部变量名而不是传入
的
变量名。让我们尝试另一种(也不太理想)
的
策略: void DumpString(char* var, char* varname) {optionalvar=
浏览 3
提问于2012-04-02
得票数 4
2
回答
是否有一种可移植
的
方法来实现各种检查和探测
宏
,以检测C++
中
的
宏
参数
的
数量?
c++
、
c++17
、
visual-studio-2019
在
中
,它建议使用以下
宏
来检测
宏
创建
的
参数数:#
define
CHECK(...)CHECK_N(__VA_ARGS__, 0,)并指出:CHECK(xxx)// Expands to 0 然而,在为C++17编译
的
MSVC 2019
中
浏览 16
提问于2022-06-14
得票数 1
回答已采纳
3
回答
visual c++与gcc/clang
中
包含
逗号
的
字符串化参数
的
不同行为
c
、
visual-c++
、
macros
、
variadic-macros
我使用字符串运算符来转换参数,该参数可能包含传递给
宏
的
逗号
为字符串。如我所知,有些字符不能字符串化--特别是
逗号
(,),因为它用于分隔参数,而右圆括号()是因为它标志着参数
的
结束。因此,我使用一个可变
宏
将
逗号
传递给字符串运算符,如下所示: #
define
MAKE_STRING(...)但是我想到了如果没有变量
宏
会发生什么,
浏览 3
提问于2014-03-24
得票数 2
2
回答
为什么
尾随
逗号
阻止此
宏
编译?
rust
、
macros
、
metaprogramming
我正在努力学习
宏
,为此,我举了一个例子: Test field : usize, }这种精确
的
语法生成:183 | macro_rules这对我来说没有任何意义,匹配模式
的
末尾有一个
逗号
,为什么它不总是寻找一个后缀
逗号
呢?
浏览 2
提问于2022-07-31
得票数 0
回答已采纳
2
回答
C
宏
,返回错误
的
参数编号
c
、
c-preprocessor
我有以下
宏
:#
define
_)#
define
FOR_EACH_6(what, x,__VA_ARGS__) #
define
FOR_EACH_8(what
浏览 3
提问于2012-11-06
得票数 4
回答已采纳
2
回答
C/C++
宏
从类型定义定义类型
c++
、
c
、
macros
我想在另一个定义
中
展开一个定义,如下所示:#
define
VARIANT_TYPENAMES SCALAR_TYPES, VECTOR_TYPES 因此,VARIANT_TYPENAMES将展开为包含两个先前定义
的
宏
的
连接
的
列表。使用-E标志显示
宏
没有在VARIANT_TYPENAMES
中
展开
浏览 17
提问于2020-05-04
得票数 0
回答已采纳
1
回答
编译器之间
的
宏
展开顺序混乱
c++
、
visual-studio-2015
、
macros
、
clang
这段代码在Visual 2015
中
编译,但没有在Clang
中
编译:#
define
MC(a) amap <MA(int,COMMA,int)> FF;编辑:简化了示例,并更改了一些
宏
名称。
浏览 0
提问于2017-05-30
得票数 2
点击加载更多
热门
标签
更多标签
云服务器
对象存储
ICP备案
云点播
腾讯会议
活动推荐
运营活动
广告
关闭
领券