0
테스트 CMakeLists.txt에서 호출합니다. "cmake"중첩 된 기능은 CMake (다른 사람의 인수로 하나의 결과를 사용)
function(foo param)
return("hello")
endfunction()
message(foo("oops"))
위 파일과 함께 실행되면 "foo (oops)"가 인쇄됩니다. 나는 그것이 "안녕하세요"를 인쇄 할 것으로 예상했다.
하나의 함수가 다른 하나의 결과를 CMake에서 수신하게하려면 어떻게해야합니까?
CMake에서 "return (x)"은 무엇을합니까? 그냥 x를 무시합니까? 그런 식으로 보입니다. 그러나 문서는 이것을 말하지 않습니다. 또한,'foo()'함수가 값을 반환하지 않을뿐만 아니라, 나의 예제에서 호출조차하지 않는다는 것에 놀랐는가? –
문서에서는 구문을 'return()'으로 제공하므로'return (x)'는 정의되지 않은 동작입니다. 나는 foo가 결코이 예제에서 호출되지 않는다는 것에 전혀 놀랐지 않습니다 - 쉘 스크립트에'echo ls'를 넣는 것과 같을 것입니다.'ls'는 결코 실행되지 않을 것입니다. –