powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Передача значение (референс) в библиотеку
9 сообщений из 9, страница 1 из 1
Передача значение (референс) в библиотеку
    #39001443
bdm77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!

Компилировал проект в Debug вся компиляция успешно проходила и программа запускается .
Компиляция в Release тоже проходит успешно, но вот при запуске программы возникает
ошибка при передаче параметра в ф-цию:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
main(){
......
   std::string ident(plugins_it->first.c_str());
   printf("Name plugin : %s\n", ident.c_str() ) // печатат имя 

   int res = plugin->load(ident);
}

//Class Plugin
int PlaginX::load(const std::string& identifier){
  printf("Name plugin : %s\n", identifier) // identifier получает знаечеие <bad_ptr> 
}



Компилирую в VS 2005 ,
я понимаю что это настройки в VS, но где именно..
М.б. у кого то были похожие проблемы?!

Спасибо!
...
Рейтинг: 0 / 0
Передача значение (референс) в библиотеку
    #39001535
YesSql
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
попробуй так

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
main(){
......
   std::string ident(plugins_it->first.c_str());
   printf("Name plugin : %s\n", ident.c_str() ) // печатат имя 

   int res = plugin->load(ident.c_str());
}

//Class Plugin
int PlaginX::load(const char * identifier) {
  printf("Name plugin : %s\n", identifier) 
}
...
Рейтинг: 0 / 0
Передача значение (референс) в библиотеку
    #39001661
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bdm77Добрый день!

Компилировал проект в Debug вся компиляция успешно проходила и программа запускается .
Компиляция в Release тоже проходит успешно, но вот при запуске программы возникает
ошибка при передаче параметра в ф-цию:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
main(){
......
   std::string ident(plugins_it->first.c_str());
   printf("Name plugin : %s\n", ident.c_str() ) // печатат имя 

   int res = plugin->load(ident);
}

//Class Plugin
int PlaginX::load(const std::string& identifier){
  printf("Name plugin : %s\n", identifier) // identifier получает знаечеие <bad_ptr> 
}



Компилирую в VS 2005 ,
я понимаю что это настройки в VS, но где именно..
М.б. у кого то были похожие проблемы?!

Спасибо!

Это не настройки VS, это кривые ручки.

Ты один раз написал правильно, а другой раз -- неверно. Надо так:

Код: plaintext
1.
printf("Name plugin : %s\n", identifier.c_str() );
...
Рейтинг: 0 / 0
Передача значение (референс) в библиотеку
    #39001665
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YesSqlпопробуй так

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
main(){
......
   std::string ident(plugins_it->first.c_str());
   printf("Name plugin : %s\n", ident.c_str() ) // печатат имя 

   int res = plugin->load(ident.c_str());
}

//Class Plugin
int PlaginX::load(const char * identifier) {
  printf("Name plugin : %s\n", identifier) 
}



Это не нужно, передача std::string по ссылке вполне себе тоже вариант без ошибок.
...
Рейтинг: 0 / 0
Передача значение (референс) в библиотеку
    #39001730
YesSql
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MasterZivЭто не нужно, передача std::string по ссылке вполне себе тоже вариант без ошибок.
Нужно-ненужно. Это параметр плагина. у которого может быть своя версия STL.
...
Рейтинг: 0 / 0
Передача значение (референс) в библиотеку
    #39001735
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YesSqlЭто параметр плагина. у которого может быть своя версия STL.

Совершенно пофиг. В этом дебильная магия темплейтов.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Передача значение (референс) в библиотеку
    #39001748
YesSql
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry SibiryakovYesSqlЭто параметр плагина. у которого может быть своя версия STL.

Совершенно пофиг. В этом дебильная магия темплейтов.

Да? Программка скомпилирована VS2005 а какой-нибудь плагин позже продали кастомеру откомпелированный VS2012.
...
Рейтинг: 0 / 0
Передача значение (референс) в библиотеку
    #39001923
bdm77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
YesSqlDimitry Sibiryakovпропущено...

Совершенно пофиг. В этом дебильная магия темплейтов.

Да? Программка скомпилирована VS2005 а какой-нибудь плагин позже продали кастомеру откомпелированный VS2012.

Плагин тоже на 2005 скомпилирован! И вопрс в том, что в debug запускается, а в release нет !!
...
Рейтинг: 0 / 0
Передача значение (референс) в библиотеку
    #39001924
bdm77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Решилась проблема.. Как Менделеву ночью приснилась решение.

Если проект в mode Release , то не надо ему "пихать" плагины, которые были скомпилированны в режиме debuge !!

Спасибо!!!
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Передача значение (референс) в библиотеку
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]