内联与虚函数
作用非常有限,編譯器通常會無視inline修飾,當然也有例外:inline virtual只有當對象類型在編譯時被確定時才會起作用,也就是調(diào)用這個inline virtual的caller不能是引用或者指針,可以是局部變量,static變量,全局變量。這個時候編譯器可能會把這個virtual function優(yōu)化成普通成員函數(shù)inline掉,但是否這么做取決權(quán)在編譯器,不能得到保證。
理論上說這兩者應(yīng)該是不共存的。但與virtual不同,inline只是編譯器的優(yōu)化建議,編譯器并不一定會采納inline這個建議,所以這兩者書寫上并存還是允許的,不過在實際編譯時,inline就不會展開了。另外我看到過一些信息,說virtual函數(shù)也有可能在編譯時被確定,從而可以實現(xiàn)inline。不過這都是Compiler Dependent,所以也不能絕對的去說。
理論上說這兩者應(yīng)該是不共存的。但與virtual不同,inline只是編譯器的優(yōu)化建議,編譯器并不一定會采納inline這個建議,所以這兩者書寫上并存還是允許的,不過在實際編譯時,inline就不會展開了。另外我看到過一些信息,說virtual函數(shù)也有可能在編譯時被確定,從而可以實現(xiàn)inline。不過這都是Compiler Dependent,所以也不能絕對的去說。
總結(jié)
- 上一篇: 污染的英文怎么写(污染的英文)
- 下一篇: 无尽之剑下载(无尽之剑)