좋은 하루루아에 대한 테이블 시뮬레이션
나는 루아 스크립트에 대한 C++ std :: map의 액세스를 제공하는 특정 작업이 있습니다. 원하는 스크립트 구문 글로브의 [ "태그"] = "값"또는 작은 방울 ("태그") = "값"연구
, 시도 luabind 구속력
std::string & glob(const std::string &tag)
{
static std::string value;
return value;
}
...
luabind::module(&state)
[
def("glob", &glob, luabind::return_reference_to(result))
]
하지만 스크립트의 실행 후 아래 1 :
glob("tag") = "asdasd"
print(glob("tag"))
오류 [문자열 "글로브 ("태그 ") ="asdasd "..."] 가지고 예기치 않은 기호 근처 '='그래서
을, 당신의 제안을 기다리고 및 의견.
감사
업데이트 2lhf : 전역 변수 데이터가 저장 및 C++ 부분을 통해 연재하고있다는 루아에서 액세스 할 수 있습니다. luaState는 스크립트 실행마다 생성되며 실행 사이에는 존재하지 않습니다. 해결책 중 하나는 스크립트 실행 전에 전역 변수 테이블을 작성하고 채우고 실행 후 맵과 동기화하는 것입니다.하지만 느린 것 같습니다. 그래서, 언급 한 문법으로 c-function을 통한 액세스가 인정 될 것입니다.
내 게시물의 업데이트 섹션을 참조하십시오. – Orange