我遇到了一些代码,它们围绕括号中方法/函数的返回值。
那是做什么的?
我看到的代码拍了一张图片,调整了大小然后又返回了。
- (UIImage *)resizeImage:(UIImage *)image { // // some fascinating, but irrelevant, resizing code here // return (image); }
至少就C来说,它没有任何区别。 parens不是必需的,但它们不会改变return语句的含义。 return语句的语法是
return语句 : 返回 表达式opt ;
表达式 non-terminal的产生之一是括号表达式或( 表达式 ) 。
没有。 这完全没用。
它会覆盖运算符优先级,但没有运算符的优先级低于“return”。
简短的回答就是它是一种风格选择,比如使用“/ * comments * /”代替“// comments”
在您的情况下,它相当于没有括号键入返回。 通常,您可以使用括号进行类型转换,或者如果要将表达式视为独立块。
例如:
// This is an untyped pointer to an instance of SomeClass void* ptr = instance; // In order to let the compiler know that ptr is an instance of SomeClass // we cast it, and then we put the cast in parentheses to be able to access // a property on the result of the cast. return ((SomeClass *)ptr).someproperty;
以上就是c/c++开发分享在C / Objective-C中将返回值放在括号中的意图是什么?相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/c-cdevelopment/559993.html