草庐IT

maybe_unused

全部标签

c++ - 我应该什么时候使用 [[maybe_unused]]?

使用[[maybe_unused]]有什么好处?考虑intwinmain(intinstance,int/*prevInstance*/,constchar*/*cmdline*/,intshow);intwinmain(intinstance,[[maybe_unused]]intprevInstance,[[maybe_unused]]constchar*cmdline,intshow);有些人可能坚持认为使用注释是丑陋的,因为这个关键字是在这种情况下制作并打算使用的,我完全同意,但是maybe_unused关键字似乎有点太长了我,使代码更难阅读。我想尽可能“严格”地遵循标准,但值

c++ - 我应该什么时候使用 [[maybe_unused]]?

使用[[maybe_unused]]有什么好处?考虑intwinmain(intinstance,int/*prevInstance*/,constchar*/*cmdline*/,intshow);intwinmain(intinstance,[[maybe_unused]]intprevInstance,[[maybe_unused]]constchar*cmdline,intshow);有些人可能坚持认为使用注释是丑陋的,因为这个关键字是在这种情况下制作并打算使用的,我完全同意,但是maybe_unused关键字似乎有点太长了我,使代码更难阅读。我想尽可能“严格”地遵循标准,但值

c++ - 与 [[maybe_unused]] 的结构化绑定(bind)

带有模式匹配的函数式语言(有时?)可能会忽略一些绑定(bind)值,但使用C++17结构化绑定(bind)似乎没有办法做到这一点(std::ignorewithstructuredbindings?)。建议是使用虚拟名称,但随后我们会收到有关未使用变量的警告。有了clang和gcc的最新头,这就是预期的事情,很好用,[[maybe_unused]]autox=4;//fine,nowarning[[maybe_unused]]auto[a,dummyb,dummyc]=std::tuple(1,1,1.0f);但我也希望这能奏效:auto[g,[[maybe_unused]]dummy

c++ - 与 [[maybe_unused]] 的结构化绑定(bind)

带有模式匹配的函数式语言(有时?)可能会忽略一些绑定(bind)值,但使用C++17结构化绑定(bind)似乎没有办法做到这一点(std::ignorewithstructuredbindings?)。建议是使用虚拟名称,但随后我们会收到有关未使用变量的警告。有了clang和gcc的最新头,这就是预期的事情,很好用,[[maybe_unused]]autox=4;//fine,nowarning[[maybe_unused]]auto[a,dummyb,dummyc]=std::tuple(1,1,1.0f);但我也希望这能奏效:auto[g,[[maybe_unused]]dummy

c++ - 链接器错误 : "linker input file unused because linking not done", 未定义对该文件中函数的引用

我的文件链接有问题。基本上,我的程序包括:主程序,gen1。gen1-接收发送到str2value的输入处理,输出结果str2value,将输入分解为标记使用“tokenizer”确定对每个人做什么样的处理token,并将它们传递给str2num或str2cmd。然后它返回一个结果数组。str2num-做一些处理str2cmd-同上author.py-一个python脚本,从头文件cmdTable.hstr2cmd.c和str2cmd.h/。我很确定我的包含正确,我检查了几次。我还检查了标题中没有条件#ifndef错误。这是我的Makefile:#CPP=g++-lserialCPP=

c++ - 链接器错误 : "linker input file unused because linking not done", 未定义对该文件中函数的引用

我的文件链接有问题。基本上,我的程序包括:主程序,gen1。gen1-接收发送到str2value的输入处理,输出结果str2value,将输入分解为标记使用“tokenizer”确定对每个人做什么样的处理token,并将它们传递给str2num或str2cmd。然后它返回一个结果数组。str2num-做一些处理str2cmd-同上author.py-一个python脚本,从头文件cmdTable.hstr2cmd.c和str2cmd.h/。我很确定我的包含正确,我检查了几次。我还检查了标题中没有条件#ifndef错误。这是我的Makefile:#CPP=g++-lserialCPP=

ios - __unused 标志行为/用法(带有 Objective-C 的 GCC)

我刚刚了解了使用GCC编译时可以使用的__unused标志,我了解的越多,我的问题就越多...为什么编译时没有警告/错误?我特地告诉编译器我不会使用变量,这似乎很奇怪,然后当我使用它时,一切都照常进行。-(void)viewDidLoad{[superviewDidLoad];[selffoo:0];}-(void)foo:(NSInteger)__unusedmyInt{myInt++;NSLog(@"myInt:%d",myInt);//Logs'1'}另外,下面两个方法签名有什么区别?-(void)foo:(NSInteger)__unusedmyInt;-(void)foo:(

ios - __unused 标志行为/用法(带有 Objective-C 的 GCC)

我刚刚了解了使用GCC编译时可以使用的__unused标志,我了解的越多,我的问题就越多...为什么编译时没有警告/错误?我特地告诉编译器我不会使用变量,这似乎很奇怪,然后当我使用它时,一切都照常进行。-(void)viewDidLoad{[superviewDidLoad];[selffoo:0];}-(void)foo:(NSInteger)__unusedmyInt{myInt++;NSLog(@"myInt:%d",myInt);//Logs'1'}另外,下面两个方法签名有什么区别?-(void)foo:(NSInteger)__unusedmyInt;-(void)foo:(

objective-c - 如何摆脱 Xcode 中的 "unused variable"警告?

我完全理解为什么会出现未使用的变量警告。我不想一般地压制它们,因为它们在大多数情况下都非常有用。但是,请考虑以下(人为的)代码。NSError*error=nil;BOOLsaved=[mocsave:&error];NSAssert1(saved,@"Dude!!1!%@!!!",error);Xcode报告saved是一个未使用的变量,当然它不是。我怀疑这是因为NSAssert1是一个宏。NS_BLOCK_ASSERTIONS宏是未定义的,因此肯定启用了ObjectiveC断言。虽然它不会伤害任何东西,但我觉得它不整洁而且很烦人,我想压制它,但我不知道该怎么做。将变量分配给自身可以

objective-c - 如何摆脱 Xcode 中的 "unused variable"警告?

我完全理解为什么会出现未使用的变量警告。我不想一般地压制它们,因为它们在大多数情况下都非常有用。但是,请考虑以下(人为的)代码。NSError*error=nil;BOOLsaved=[mocsave:&error];NSAssert1(saved,@"Dude!!1!%@!!!",error);Xcode报告saved是一个未使用的变量,当然它不是。我怀疑这是因为NSAssert1是一个宏。NS_BLOCK_ASSERTIONS宏是未定义的,因此肯定启用了ObjectiveC断言。虽然它不会伤害任何东西,但我觉得它不整洁而且很烦人,我想压制它,但我不知道该怎么做。将变量分配给自身可以