У меня есть в [example.cc] метод:
std::string Car::accelerate (std::string n)
{
cout<<n<<endl;
return n;
}
Я хотел бы вызвать этот метод из расширения php
Я написал это в своем расширении [test_php.cc]:
char *strr=NULL;
int strr_len;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &strr, &strr_len) == FAILURE) {
RETURN_NULL();
}
std::string s(strr);
RETURN_STRING(car->accelerate(s),1);
У меня следующая ошибка:
warning: deprecated conversion from string constant to ‘char*’
/home/me.cc:79: error: cannot convert ‘std::string’ to ‘const char*’ in initialization
/home/me.cc: At global scope:warning: deprecated conversion from string constant to ‘char*’
Если я изменю return_string (..) _ простым вызовом car->accelerate(s)
; это работает .. это правда, что ничего не печатается как функция возврата. нужна помощь. оценить