컴파일러 경고(수준 4) C4714
'function' 함수가 인라인이 아니라 __forceinline으로 표시되었습니다.
인라인 확장을 위해 지정된 함수가 선택되었지만 컴파일러가 인라인을 수행하지 않았습니다.
__forceinline
컴파일러보다 __inline
더 강력한 표시이지만 인라인 처리는 컴파일러의 재량에 따라 수행되지만 이 함수를 인라인 처리할 때의 이점을 결정하는 데는 추론이 사용되지 않습니다.
경우에 따라 컴파일러는 기계적 이유로 특정 함수를 인라인하지 않습니다. 예를 들어 컴파일러는 인라인되지 않습니다.
SEH와 C++ EH를 모두 혼합하는 경우 함수입니다.
-GX/EHs/EHa가 켜지면 값으로 전달되는 복사 생성 개체가 있는 일부 함수입니다.
-GX/EHs/EHa가 켜진 경우 값으로 해제할 수 없는 개체를 반환하는 함수입니다.
-Og/Ox/O1/O2 없이 컴파일할 때 인라인 어셈블리가 있는 함수입니다.
변수 인수 목록이 있는 함수입니다.
(C++ 예외 처리) 문이 있는
try
함수입니다.
다음 샘플에서는 C4714를 생성합니다.
// C4714.cpp
// compile with: /Ob1 /GX /W4
__forceinline void func1()
{
try
{
}
catch (...)
{
}
}
void func2()
{
func1(); // C4714
}
int main()
{
}