Перейти к содержанию

Рекомендуемые сообщения

Всем привет :)) Кто может подсказать, возникла необходимость вызвать функцию которая принимает std::string как параметр... Естественно просто подсунуть ей std::string не получится(на сколько мне известно, реализация зависит от кучи факторов, версии компилятора, флагов, погоды :D) по этому они будут отличатся. 

image.thumb.png.de7746b2b89c5d9082a6d1c25d85eb50.png

this ptr у меня есть :))

Я чуток по отлаживал. В моей МСВЦ 2019 std::string строка или указатель на строку находится сразу в std::string

В игре же +0x4

так что исходя из этого, получается a2 - что-то... а3 строка или указатель на строку в зависимости от размера строки. > 16 указатель, <=16 строка

а8 - размер строки

далее вторая std::string 

чисто технически, я могу вручную вызвать все проверки из этой функции в своём коде и вызвать евент т.к. он вызывается чуть ниже(я уже это сделал, но без всех этих проверок очень легко уронить игру)

но кода тут очень много в функции, по этому хотелось бы как-то обойтись)

Не кто попадал в подобную ситуацию? :)

чисто технически отработает ли это если я просто подсуну в а3 и а10 char* а, в а8 и а15 strlen на эти строки?

P.S. последняя мысль пришла в голову пока писал пост, сейчас пойду опробую :) 

 

Ссылка на комментарий
Поделиться на другие сайты

Сам спросил, сам ответил ) Прекрасно ))) Но вообще да, чаще всего функции перекидываются массивами байтов (буферами), так как накладные расходы на создание стрингов весьма велики.

Ссылка на комментарий
Поделиться на другие сайты

  • Xipho закрыл тема
Гость
Эта тема закрыта для публикации ответов.
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.