`inline friend ......`函数和`friend inline .....`函数有什么区别?

What is the difference between ` inline friend ...... ` functions and `friend inline .....` functions?

当我检查 string.h 文件中的声明时,我看到了这些东西:

friend inline void     cat(const String&,const SubString&,const String&,String&);
inline friend void     cat(const String&,const SubString&,const String&,String&);

它们有什么区别?

friendinline修饰符可以独立使用,顺序没有影响。例如,inline friend foo()friend inline foo() 相同。

没有区别。 friendinline都是独立的声明说明符,可以任意顺序指定。

虽然在友元声明中声明函数 inline 没有多大意义。更一般地说,在任何 非定义 函数声明中指定 inline 是没有意义的。 inline 应用于函数时更有意义 definition.