Форум программистов, компьютерный форум CyberForum.ru

Разный результат работы функции в release и debug - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Напишите функцию, возвращающую сраднее геометрическое элементов http://www.cyberforum.ru/cpp-beginners/thread1088978.html
Напишите функцию, возвращающую сраднее геометрическое элементов в однородном целочисленном массиве с положительными значениями элементов (среднее геометрическое вычисляется по формуле: G({x}_{1}, {x}_{2},..., {x}_{N})=\sqrt{{x}_{1}*{x}_{2}*...*{x}_{N}}).
C++ Нужно настроить в проекте ссылки на загружаемую DLL Как это делается? http://www.cyberforum.ru/cpp-beginners/thread1088971.html
Есть ли такой метод? C++
Подскажите если ли метод в классе iostream или ios, который считает количество введённых символов с помощью объекта cin. Спрашиваю потому что есть функция gcount(), но она только для get(), getline() или read() и также не охота мучатся с преобразованием в строку и там уже считаться.. спасибо!
В целочисленном массиве найти наибольший элемент среди элементов меньше своих соседей C++
Здравствуйте! Помогите, пожалуйста, с задачей: в целочисленном массиве найти наибольший элемент среди элементов меньше своих соседей.
C++ В каждой строке найти минимальный элемент, затем среди них найти максимальное и вывести на экран индекс этого элемента http://www.cyberforum.ru/cpp-beginners/thread1088932.html
Здравствуйте! Помогите, пожалуйста, с задачей: В двумерном массиве все числа различны. В каждой строке найти минимальный элемент, затем среди них найти максимальное и вывести на экран индекс этого элемента.
C++ Какие подводные камни могут быть, при хранении в контейнере элемента типа void*? Привет читателям! Какие подводные камни могут быть, при хранении в контейнере элемента типа void*? Делаю некое подобие "memory pool". Например: std::vector<void*> somes .. std::cout << *static_cast<int*>(somes) std::cout << *static_cast<std::string*>(somes) Примерно так собираюсь использовать, но с проверкой на валидность. подробнее

Показать сообщение отдельно
hdnn
11 / 11 / 3
Регистрация: 14.11.2012
Сообщений: 48
Завершенные тесты: 1
04.02.2014, 13:36     Разный результат работы функции в release и debug
Такая проблема. Есть программа, в которой объявляется переменная типа std::string. Ниже вызывается функция, реализованная в dll, принимающая данные в формате void*. А в самой функции заполняем эту строку каким-то текстом. В релиз и дебаг версиях dll-ки значения на выходе разные. Если использовать MFC-шный CString вместо STL-вского string - всё проходит корректно.

Функция exe-шника:
C++
1
2
3
4
5
6
int CTesJobTab2::SetDataLog(void)
{
    string sdata;
    m_work->GetParam(33333, &sdata);
    return 0;//DEBUG:sdata=="1TEST", RELEASE: sdata=="T"
}
Функция DLL:
C++
1
2
3
4
5
6
7
8
9
10
int CGeneralWork::GetProperty( int key, void* data)
{
    switch (key)
    {
    case 33333:
        (string*)data->append("1TEST");
    break;
    }
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 16:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru