Tag: 内联

内联函数“未定义符号”错误

我想写一个内联函数,但是我收到一个错误。 我该如何解决? 错误信息: Undefined symbols for architecture i386: “_XYInRect”, referenced from: -[BeginAnimation ccTouchesEnded:withEvent:] in BeginAnimation.o ld: symbol(s) not found for architecture i386 clang: error: linker command failed with exit code 1 (use -v to see invocation) 码: CGPoint location = CGPointMake(60, 350); if (XYInRect(location, 53, 338, 263, 369)) { } inline BOOL XYInRect(CGPoint location, float […]

外部内联函数会发生什么?

如果我在.h文件中定义我的函数会发生什么 extern int returnaint(void); ,在相关的.c文件中定义它 inline int returnaint(void) { return 1; } 并在另一个.c文件中包含标题并使用该函数? 当我单独编译事物,为每个.c文件创建一个目标文件然后链接它们时,是否包含内联函数,或者会发生什么? 我知道编译器可以忽略inline ,但是如果它在这种情况下不忽略它呢?

在C中使用`inline`关键字有什么用?

我在stackoverflow中读了几个关于C中inline问题,但仍然不清楚。 static inline void f(void) {}与static void f(void) {}没有实际区别。 inline void f(void) {}不能像C ++那样工作。 它在C中如何工作? 实际上extern inline void f(void); 做? 我从来没有真正在我的C程序中使用inline关键字,当我在其他人的代码中看到这个关键字时,它几乎总是static inline ,其中我看到只有static没有区别。