필자는 사람이 읽을 수있는 수학 표현식의 문자열에서 함수를 생성하는 기능이있는 JavaScript 용 복합 수학 라이브러리를 작성했습니다. C++에서 런타임 생성 함수를 구현하는 방법이 있습니까?런타임 중에 C++ 코드를 컴파일하는 방법이 있습니까?
답변
FUZxxl 님의 답변은 정확하며 Clang/LLVM 시설물을 살펴 보는 것이 좋습니다.
(유용하지 않음) 자습서 file here이 있습니다. Language on LLVM 작성에 대한 광범위한 자습서. C++ 응용 프로그램에서 생성 된 라이브러리를로드 할 수 있습니다. 당신이 성능에 중요한 구성 요소가없는 한
, 당신은 ChaiScript의 사용을 사용할 수있다 (NB를 : 나는 그것을 제휴 어떠한 방식으로 또는 저자에서 오전)
유용한 링크를 제공해 주셔서 감사합니다. 그렇습니다. 구성 요소는 성능에 결정적인 요소입니다. 라이브러리를 포팅하는 이유는 프랙탈 생성 프로그램의 속도를 높이기 위해서입니다. –
C++ 컴파일러를 실행하여 공유 라이브러리를 생성하고이를 프로그램에로드하여 런타임에 C++ 코드를 실행할 수 있습니다. 세부 사항은 Windows와 POSIX가 공유 라이브러리를로드하는 메커니즘이 서로 다르기 때문에 작업중인 플랫폼에 따라 달라집니다.
'컴파일 된 언어 방법은'정의하는 것입니다 문법, 구문 분석기, AST (추상 구문 트리) 작성 및 해석/컴파일. 이것을 할 때, 당신은 본질적으로 자신 만의 컴파일러/인터프리터를 작성하고 있으며 많은 재미가 있습니다. 쉽게 작동하게하려면 부스트 정신을 살펴보십시오.
권장 사항을 보내 주셔서 감사합니다.하지만 유감스럽게도 컴파일 할 문자열은 런타임 전까지는 알 수 없으므로 사용자 입력을 통해 알 수 있습니다. 나는 통역사가 나의 요구에 충분히 높은 성과를 낼 것이라고 생각하지 않는다. –
- 1. objective-c 코드를 컴파일하는 중에 오류가 발생했습니다.
- 2. Objective-C 방법이 런타임 중에 가변적인지 확인
- 3. 런타임 중에 문자열을 함수로 변환하는 방법이 있습니까?
- 4. FF 애드온 코드를 컴파일하는 방법이 있습니까
- 5. C# 어셈블리를 프로젝트에 정적으로 컴파일하는 방법이 있습니까?
- 6. C# 소스 코드를 암호화하는 방법이 있습니까?
- 7. 런타임 중에 C# APP가 동결됩니다.
- 8. 런타임 중에 디자이너 도구를보고하십시오.
- 9. Mac에서 C++ 코드를 컴파일하는 중
- 10. 런타임 중에 조건부 컴파일 기호가 설정되었는지 확인하는 방법이 있습니까?
- 11. 런타임 중에 새로운 유형을 빌드 할 수있는 방법이 있습니까?
- 12. Selenium에서 런타임 중에 요소의 xpath를 동적으로 가져 오는 방법이 있습니까
- 13. 런타임 중에 개체를 만드시겠습니까?
- 14. Pro * C 코드를 컴파일하는 단계
- 15. maven을 사용하여 프로덕션 모드에서 GWT 코드를 컴파일하는 방법이 있습니까
- 16. Symbian OS에 Free Pascal 코드를 컴파일하는 방법이 있습니까?.
- 17. JavaScript를 ActionScript로 컴파일하는 방법이 있습니까?
- 18. 런타임 중에 플러시 :
- 19. 런타임 중에 CLASSPATH 설정
- 20. 기계 코드로 컴파일하는 C C++ C# 컴파일러가 있습니까
- 21. C 프로그램에서 런타임 중에 'OSTYPE'을 결정하십시오
- 22. 이동 중에 프로그램 종료시 코드를 실행하는 방법이 있습니까?
- 23. Linux에서 Windows Visual C++ 코드를 컴파일하는 방법
- 24. 이 C 코드를 작성하는 간단한 방법이 있습니까?
- 25. C#에서 런타임 중에 메뉴 항목 추가하기
- 26. C++ : 런타임 중에 dll 디렉터리 추가
- 27. JIT는 런타임 중에 어떻게 최적화 된 기계 코드를 대체합니까?
- 28. 런타임 중에 Manifest.xml에 쓰기
- 29. 런타임 중에 JComboBox의 내용을 변경하십시오.
- 30. 런타임 중에 WebContent의 파일 변경
C 또는 C++로 제한하십시오. 그렇지 않으면 약간 넓습니다. – fuz
@FUZxxl 거기, 고쳐졌습니다. –
컴파일러를 호출 할 수 있습니다;). 진심으로, 나는 LLVM 남자들이 어떤 시점에서 C++ JIT 작업을 한 것으로 생각한다. (나는 잘못 생각할 수도있다.) –