一个关于inline百思不得其解的有关问题
一个关于inline百思不得其解的问题我用的是g++ 难道inline有什么隐藏功能?[解决办法]我用的是g++ 难道inli
一个关于inline百思不得其解的问题
我用的是g++ 难道inline有什么隐藏功能?
[解决办法]
inline有一个作用
就是,可以把本来,不能写在头文件里的,函数的定义---实现代码,写在头文件了。
这是常识,不是隐藏功能。
这里
inline Query::Query(const string &ss):qq(new Word_query(ss)) {}
是个构造函数,本来不需要inline,直接写在类 Query 内部即可
形式为:
Query(const string &ss):qq(new Word_query(ss)) {}
这里不过是为了避开 类Query 和类Word_query的循环引用。
把这个构造函数写在类外面,两个类定义的后面,并加了inline 以避免,必须写在实现文件中。
不过,是不是所有编译器,都支持这种 inline ,要查标准,和编译器的支持情况。