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

Потоки и выделение памяти в куче - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Не могу найти ошибку в исходнике. http://www.cyberforum.ru/cpp-beginners/thread503146.html
Привет програмёры.Я учусь програмировать на С++ и для закрепления начала изучения функций и массивов написал небольшую програмку massiv, и она компилируется, но работает неправильно(после ввода чисел работа почемуто обрывается.Не могу найти ошибку.Вот текст програмки: #include<cstdio> #include<cstdlib> #include<iostream> using namespace std; int Proizved(int mass, int velechina);
C++ _tsetlocale(LC_CTYPE, _T("rus_rus")) CString cfn; ... cfn.Left(3).CompareNoCase(L"ИЗМ") == 0 Почему это условие не выполняется при cfn равное, например, "изм5"? Пробовал также перед условием писать следующее: cfn.MakeUpper(); не помогло. http://www.cyberforum.ru/cpp-beginners/thread503108.html
Как получить все папки и файлы хранящиеся на диске? C++
Здравствуйте! Помогите пожалуйста в написании кода, с помошью которого можно получить все папки и файлы хранящиеся на диске D: С уважением!
GDI+: Вывод искривленного по дуге текста C++
Приветствую, All Подскажите плз, как можно сделать в GDI+ вывод искривленного по дуге текста, чтобы буквы были пропорционально растянуты, что то вроде эффекта Arc Text в Photoshop?
C++ Программа к 8 марту http://www.cyberforum.ru/cpp-beginners/thread502901.html
#include <zvety.h> #include <vino.h> #include <mans.h> #define QPIVO 3 #define QZVETY 5 // The one and only CWoman object CWoman woman;
C++ Исключение при вызове iterator destruction Здравствуйте. Помогите пожалуйста. Вот фрагмент кода: try { if(!m_vDataItems.empty()) { int nItemsCount = m_vDataItems.size(); for(int i=0; i < nItemsCount; i++) { _variant_t vtValues; vtValues = (long)m_vDataItems.nID; vtValues = (long)m_vDataItems.nParentID; подробнее

Показать сообщение отдельно
arist
0 / 0 / 0
Регистрация: 14.02.2011
Сообщений: 100
30.05.2012, 13:32  [ТС]     Потоки и выделение памяти в куче
Да, я где-то читал, что с GUI в потоках есть проблемы...
Но я переписал AppendEdit() и всё теперь работает прекрасно, в т.ч. DoModal().
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
void AppendEdit(CEdit *log, const TCHAR *s){
    //TCHAR *text = new TCHAR[log->GetWindowTextLength()+_tcslen(s) + 1];
    HANDLE hh = ::HeapCreate(0, 2000, 0);
    TCHAR *text = (TCHAR *)HeapAlloc(hh, 0, log->GetWindowTextLength()+_tcslen(s) + 1);
 
    log->GetWindowText(text, log->GetWindowTextLength());
    _tcscat(text, s);
    log->SetWindowText(text);
 
    //delete text;
    HeapFree(hh, 0, text);
    HeapDestroy(hh);
}
Т.е. для выделения/освобождения памяти я использовал функции HeapXxxxxx().

Кстати, вкратце, какие бывают потоки и чем они отличаются. Что за worker thread, UI thread и какие там ещё есть...
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru