相关疑难解决方法(0)

C++宏什么时候有用?

ç预处理器有理由担心和C++社区避之唯恐不及.内联功能,功能和模板通常是更安全和更好的替代品#define.

以下宏:

#define SUCCEEDED(hr) ((HRESULT)(hr) >= 0)  
Run Code Online (Sandbox Code Playgroud)

绝不是优于安全类型:

inline bool succeeded(int hr) { return hr >= 0; }
Run Code Online (Sandbox Code Playgroud)

但宏确实有它们的位置,请列出您为宏找到的用途,如果没有预处理器,您就无法做到.

请将每个用例放在一个单独的答案中,以便可以进行投票,如果您知道如何在没有预备教授的情况下实现其中一个答案,请指出该答案的评论.

c++ c-preprocessor

171
推荐指数
19
解决办法
9万
查看次数

内联函数与预处理器宏

内联函数与预处理器宏有何不同?

c c++ macros inline

107
推荐指数
6
解决办法
8万
查看次数


#define从C转换为C#

这是C代码:

/* LERP(a,b,c) = linear interpolation macro, is 'a' when c == 0.0 and 'b' when c == 1.0 */
#define LERP(a,b,c)     (((b) - (a)) * (c) + (a))
Run Code Online (Sandbox Code Playgroud)

http://www.brucelindbloom.com/index.html?Eqn_XYZ_to_T.html

等于这个C#代码?

private static double LERP(double a, double b, double c) { return (((b) - (a)) * (c) + (a)); }
Run Code Online (Sandbox Code Playgroud)

c c# macros

8
推荐指数
3
解决办法
1268
查看次数

标签 统计

c++ ×3

c ×2

macros ×2

c# ×1

c-preprocessor ×1

inline ×1