Re[3]: проблема взаимодействия С++ и Managed C++
|
От: |
Аноним
|
|
| Дата: | 28.12.05 12:08 |
|
Оценка: |
|
Здравствуйте, Grimlock, Вы писали:
GG>2 и 3 варианты работают .... почему не работает первый???
В функцию __declspec (dllexport) char * TestStringFromStdString(std::string value)
{
return (char *) value.data();
}
передаётся на стеке временная копия std::string, которая разрушается при возврате из функции, а вы пытаетесь использовать данные этого объекта.
Здесь
char * outputValue2 = t2(new std::string(inputValue0));
имеет место утечка памяти.
Пока на собственное сообщение не было ответов, его можно удалить.