Mam plik źródłowy C++ i plik źródłowy Python. Chciałbym, aby plik źródłowy C++ był w stanie wykorzystać zawartość źródłowego pliku Pythona jako duży napis literowy. Mógłbym zrobić coś takiego:C/C++, czy możesz # dołączyć plik do literału literowego?
char* python_code = "
#include "script.py"
"
Ale to nie zadziała, ponieważ na końcu każdej linii muszą znajdować się \ 's. Mogłem ręcznie kopiować i wklejać zawartość kodu Pythona i otaczać każdą linię cudzysłowami i zakończeniem \ n, ale to jest brzydkie. Mimo że źródło Pythona zostanie skutecznie wkompilowane w moją aplikację C++, chciałbym zachować go w osobnym pliku, ponieważ jest on bardziej zorganizowany i działa lepiej z edytorami (emacs nie jest wystarczająco inteligentny, aby rozpoznać, że jest to C literał łańcuchowy jest kodem Pythona i przełącz się do trybu Pythona, gdy jesteś w nim).
Proszę nie sugerować używam PyRun_File, to co staram się unikać w pierwszym miejscu;)
Wiem, że to jest duplikat. –
Jeśli jest to duplikat, czy możesz podać link? Rozejrzałem się i nic nie widziałem przy moich wyszukiwanych terminach. –
Czy poprzednia wersja python była specyficzna? Ponieważ jest to bardziej ogólne pytanie. –