Может кто-нибудь объяснить мне, как получить пространство имен в расширениях QScriptEngine? Я настроил его, поэтому у меня есть каталог foo / в разделе script / с исполняемым файлом __init __. Js.
__setupPackage__(__extension__);
print(__extension__);
hello = function() { return 5; };
И в моем C ++ коде:
engine.evaluate ( "Привет ();"); // отлично работает
Итак, мой вопрос: в чем смысл файловой иерархии, такой как foo / bar / what (foo.bar.whither), если все они сосредоточены в глобальном пространстве имен? Я видел несколько примеров, когда они пытаются создать пространство имен в коде, но я не могу заставить это работать без ошибки компилятора.
foo = {
hello : function() { return 5; }
};
и в моем коде C ++:
engine.evaluate("foo.hello();");
Я неправильно понимаю, как Qt обрабатывает пространства имен? Должно ли все действительно быть объединено в глобальную область независимо от того, из какого файла это было взято? Есть ли подходящий пример для создания такого типа пространств имен? Благодарю.