Проблема строки Chaiscript между Visual Studio и Xcode - PullRequest
0 голосов
/ 02 марта 2019

Я столкнулся с очень странной ошибкой или, скорее всего, я что-то упустил.Мой скрипт отлично работает при компиляции с VS 2015, но завершается неудачно, когда я переключаюсь на Mac и использую Xcode 9.

Проблема в том, что на Mac chaiscript удаляет начало возвращаемых строк.Не знаю почему?Вот проблема: на стороне C ++ у меня есть такой класс, который подключается к API и сохраняет ответ API в JSONString:

class MyClass
{
  public string JSONString;
  public void Get(URL);
}

Этот класс создается из chaiscript и содержит данные JSON.Вот код:

def GetAPIData()
{
  var myurl = "Https://api.domain.com";
  auto &request = MyClass();
  request.Get(myurl);
  return request.JSONString;
}

var response = GetAPIData();

Когда я регистрирую строку из GetAPIData, в Windows это выглядит примерно так:

[{"id": 91, "name": "aaa", "status": "Active"}, {"id": 2, "name": "bbb", "status": "Active"}]

На Mac:

: "aaa", "status": "Active"}, {"id": 2, "name": "bbb", "status": "Active"}]

Почемуэто может происходить?

1 Ответ

0 голосов
/ 02 марта 2019

Я почти уверен, что это ошибка.Мне удалось обойти эту проблему, обернув request.JSONString с to_string ().

def GetAPIData()
{
  var myurl = "Https://api.domain.com";
  auto &request = MyClass();
  request.Get(myurl);
  return to_string(request.JSONString);
}
...