Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Visual C++ 8.0 
:(
    Опции темы
Ap0k
Дата 26.12.2005, 18:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 48
Регистрация: 9.1.2005
Где: г.Ижевск

Репутация: нет
Всего: нет



Здравствуйте, с чего рекомендуете начать изучение этго языка и пакета Microsoft Visual Studio 2005.
Заранее спасибо.
PM MAIL ICQ   Вверх
useless
Дата 29.12.2005, 13:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 123
Регистрация: 18.5.2004

Репутация: нет
Всего: 1



Я бы сначала в книжный магазин сходил. Правда около 1000 руб. с собой брать надо, если хочешь хорошие книжки приобрести. Это лично мой подход.
--------------------
Лучше день потерять, потом за 5 минут долететь !!!
PM MAIL ICQ   Вверх
Ap0k
Дата 29.12.2005, 16:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 48
Регистрация: 9.1.2005
Где: г.Ижевск

Репутация: нет
Всего: нет



Ходил уже......нету там =(
PM MAIL ICQ   Вверх
Spieler
Дата 1.1.2006, 02:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 1.1.2006

Репутация: нет
Всего: нет



Взял Microsoft Visual Studio 2005 решил зделать небольшую програмку(калькулятор) чисто для обучения. И столкнулся с проблемой преобразования с String (textbox) в переменную типа int
и обратно. пробовал itoa,atoi но эти функции работают только с char , а со Srting неполучается. Если кто нибуть знает напишите. Большое спасибо smile
PM MAIL   Вверх
nikitao
Дата 1.1.2006, 04:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кот-программист
***


Профиль
Группа: Завсегдатай
Сообщений: 1206
Регистрация: 30.8.2005
Где: Спб

Репутация: нет
Всего: 26



Spieler,дык поля зачем Stringami обьявлять.Обьявляй их переменыые типа int.


Ap0k,а ты что вообще знаешь??? Там сам C++ или уже даже VC++???


--------------------
Жизнь - печальная штука.
PM MAIL ICQ Skype GTalk   Вверх
Spieler
Дата 1.1.2006, 13:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 1.1.2006

Репутация: нет
Всего: нет



nikitao,[b] я вообще-то ничего Stringami не обьявляю, я хочу считать с TextBox.Name число
и соответсвено преобразовать в int что-бы работать как с числом.
Может я неправельно понял но TextBox.Name уже является типом String. smile ??? smile
PM MAIL   Вверх
nikitao
Дата 1.1.2006, 16:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кот-программист
***


Профиль
Группа: Завсегдатай
Сообщений: 1206
Регистрация: 30.8.2005
Где: Спб

Репутация: нет
Всего: 26



Spieler,погоди ты вообще в VC++ или в VB или VC#???

VC++ это тебе не Delphi или ему подобные,тут нельзя вот так брать и считыват TextBox.Name




--------------------
Жизнь - печальная штука.
PM MAIL ICQ Skype GTalk   Вверх
Spieler
Дата 1.1.2006, 19:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 1.1.2006

Репутация: нет
Всего: нет



Я в VC++. А есть какое нибудь решение, или альтернатива?
PM MAIL   Вверх
nikitao
Дата 1.1.2006, 23:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кот-программист
***


Профиль
Группа: Завсегдатай
Сообщений: 1206
Регистрация: 30.8.2005
Где: Спб

Репутация: нет
Всего: 26



Spieler
TextBox это в смысле Edit Control?

Короче,ты делал такие действия:
Нанес Edit на форму-> нажал првой кнопкой по нему-> выбрал "Add Variable?



--------------------
Жизнь - печальная штука.
PM MAIL ICQ Skype GTalk   Вверх
Spieler
Дата 2.1.2006, 03:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 1.1.2006

Репутация: нет
Всего: нет



В VC++ 8 текстовое поле называется TextBox.
К примеру я просто наношу три таких поля(и кнопку), при нажатии на кнопку хочу чтобы
в третем поле появилась сумма двух первых. Однако для этого надо функцию преобразования String(тип TextBox ) в int (чтобы просумировать) .
PM MAIL   Вверх
Spieler
Дата 6.1.2006, 00:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 1.1.2006

Репутация: нет
Всего: нет



Нашол!!! smile smile Нашол В Visual C++ класс Convert в котором есть много
методов для преобразований типов. Например :
Convert::ToString(double); // для преобразования в строку
Convert::ToDouble(String); // для преобразования в число(дробное)
PM MAIL   Вверх
Штык
Дата 8.1.2006, 13:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 206
Регистрация: 9.5.2005
Где: Москоу

Репутация: нет
Всего: 1



угумс советую книжку хорошую какую нить приобрести..а там уже дело пойдеть..многие ответы на вопросы я так полагаю ты туть и найдешь)
--------------------
Lachetes familieresQui nous rendent guerrieres
PM MAIL WWW ICQ   Вверх
Spieler
Дата 12.1.2006, 14:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 1.1.2006

Репутация: нет
Всего: нет



Такой вопрос! У меня есть рисунок(Bitmap) который при нажатии с клавиатуры перемещается по форме (вверх,влево,...). Я исползую событие KeyPress(). НО клавиши реагируют взаимоисключая друг друга, А мне надо чтоб при нажатии двух клавиш происходило и два соответствующих действия (одновременно). Если кто знает чо нибуть по этому поводу поделитесь мыслями.
PM MAIL   Вверх
JoyEx
Дата 15.1.2006, 15:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дядя
**


Профиль
Группа: Участник
Сообщений: 323
Регистрация: 21.6.2005
Где: Москва, РФ

Репутация: 5
Всего: 12



Ну тогда нада создать два потока при нажатии 2-х клафишь
только не спрашиввай меня как это сделать


--------------------
Если ты уже никого не боишься, значит ты самый страшный 
PM IM ICQ AOL YIM MSN   Вверх
Spieler
Дата 30.1.2006, 13:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 1.1.2006

Репутация: нет
Всего: нет



Подскажите как в Visual С++ 8 подключать библиотеки чтоб проги шли на других компах
PM MAIL   Вверх
Enjoy
Дата 4.2.2006, 19:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 4.2.2006

Репутация: нет
Всего: нет



Цитата(Ap0k @ 29.12.2005, 16:04)
Ходил уже......нету там =(

smile smile
Чего нету? Денег нету или книжки в магазине???
Когда я в последний раз был в книжном магазине в провинциальном городе, то там было как минимум 100(!!!) книжек по С++!!!

А если серьёзно, то лучший вариант для тебя - это выучить книгу Дейтелов по С++.

Удачи!
PM MAIL   Вверх
AlexPro
Дата 5.2.2006, 07:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 157
Регистрация: 9.11.2005
Где: Санкт-Петербург

Репутация: 3
Всего: 4



Цитата(Enjoy @ 4.2.2006, 19:52 Найти цитируемый пост)

Когда я в последний раз был в книжном магазине в провинциальном городе, то там было как минимум 100(!!!) книжек по С++!!!

smile Это что за провинциальный город? Новосибирск? Екатеринбург? У каждого разные понятия "провинциального города". Когда я был в последний раз в книжном магазине в провинциальном городе (в котором, собственно, и проживаю - между прочим, районный центр) , там было две книги по компьютерной тематике: "Компьютер для пользователя" и "Excel для полных идиотов". Так что только интернет меня и выручает - есть возможность заказать книги по почте.
PM MAIL   Вверх
secado
Дата 5.2.2006, 16:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 56
Регистрация: 5.2.2006

Репутация: нет
Всего: 3



Начну с самого неприятного, старые char функции не работают, в массе своей. Вообще. Говорю об этом со стопроцентной уверенностью, потому что не далее как 10 минут назад, прекратил расхлебывать char функции в библиотеке CRT (стандарт С++). В результате: если хотите
отсутствие проблем с строками в windows программах - используйте только wchar_t тип для строк (для не MFC-данных), для MFC-данных - только класс CString и никаких LPCTSTR, LPSTR, LPWSTR, PCSTR, XCHAR... и прочего бреда. У меня от LPCTSTR уже нервный тик появился, как только его вижу - сразу же заменяю, если константа на _T(" "), если переменная - на CString. И блин, работает! Далее, большая часть,
строчных функций (не только со строками, но и файловых) - переписана с защитой от переполнения буфера (к именам функций добавлены
_s), в основном список параметров только дополнился явным указанием длины буфера, вроде бы и все, но Visual Studio настойчиво рекомендует использовать именно их. И это еще не все, windows-программистам будет "приятно" узнать, что есть еще одна группа строчных функций: та, которая описана в StrSafe.h (это WinAPI функции) и которые тоже переопределяют, как более современные, старые char функции. Хух!
Почему я об этом рассказываю? Будучи студентом одного из ВУЗов по специальности программист, я столкнулся с отсутствием тотальности в очень многих книгах по программированию (на С++ в частности). Именно тотальности - т.е. описанию всех(!) возможностей, которые предоставляет тот или иной аспект языка. И поскольку ни в литературе ни в Internet, я не нашел ничего подобного, я решил сделать это сам.
Взял MSDN 2005 JAN, MSDN 2K5 release и начал его штудировать, каждую статью, и писать маленький тренировочный проект по каждой возможности. Все для достижения работающего (всегда!) кода. Узнал я конечно, очень много интересного. Например, в некоторых демонстрационных примерах в CRT библиотеке преднамеренно (я подчеркиваю, преднамеренно!!) оставлены переменные с именами new, template (я подозреваю, что Microsoft специально это делает для проверки тех, кто изучает MSDN).
Да, и напоследок. Вот список функций, которые подхватывает класс CString (не мучайтесь с template СString, CSimpleString, CStringT и т.д.).
// CString a;
// a.AllocSysString() функция распределения памяти для автоматизации объектов в COM и ATL
// a.Append(PCXSTR pszSrc) добавление строки к строке
// a.AppendChar(XCHAR ch) добавление символа к строке
// a.AppendFormat(UINT nFormatID,...) добавление форматированной строки из ресурсов к строке
// a.AppendFormat(PCXSTR pszFormat,...) добавление форматированной строки к строке
// a.AppendFormatV(PCXSTR pszFormat, va_list args) использует RTTI функции списка аргументов (не применять)
// a.CharToOemA();
// a.CheckImplicitLoad(const void *pv);
// a.CloneData(CStringData *pData);
// a.Collate(PCXSTR psz); следующие две функции сравнивают две строки с учетом специфики определенных языков
// a.CollateNoCase(PCXSTR psz); следующие две функции сравнивают две строки с учетом специфики определенных языков
// s.Compare(PCXSTR psz); сравенение строки с учетом регистра символов
// s.CompareNoCase(PCXSTR psz); сравнение строки без учета регистра символов
// a.Concatenate(&strResult,PCXSTR psz1, int nLength1,PCXSTR psz2, int nLength2); // ATL функция
// a.Construct(*pString);
// a.CopyChars(XCHAR *pchDest,XCHAR *pchSrx, int nChars); копирование символов из одного буфера в другой (копируются char объекты), сами буфера не должны перекрываться в памяти
// a.CopyCharsOverlapped(XCHAR *pchDest,XCHAR *pchSrx, int nChars); то же самое, но буфера могут частично перекрываться в памяти
// a.Delete(int iIndex, int nCount); удаление количества символов, начиная с индекса
// a.Empty(); очистка строки
// a.Find(XCHAR ch,int iStart); поиск символа, начиная с начала строки
// a.FindOneOf(PCXSTR pszCharSet) нахождение первого вхождения любого из символов, перечисленных в строке
// a.Fork(int nLength);
// s.Format(PCXSTR pszFormat,...); форматирование строки указанными командами форматирования (обычный вариант)
// s.Format(UINT nFormatID,...); то же самое форматирование, но строкой, находящийся в ресурсах
// s.FormatMessageV(PCXSTR pszFormat, va_list *pArgList); эти команды используют список аргументов из RTTI
// s.FormatMessageW(PCXSTR pszFormat,...); форматирование сообщения (команды форматирования указаны)
// s.FormatMessageW(UINT nFormatID,...); форматирование сообщения строкой из ресурсов
// s.FormatV(PCXSTR pszFormat, va_list args); эти команды используют список аргументов из RTTI
// a.FreeExtra(); освобождение предварительно распределенной памяти для строки, чей символ конца находится раньше чем длина строки
// a.GetAllocLength(); возврат размера выделенной памяти под объект строки
// a.GetAt(int iChar); извлечение сисвола указанного номера из строки, нумерация с 0
// a.GetBuffer(int nMinBufferLength); возврат строки типа char * (фиксация размера строки и преобразование к обычным строчным функциям)
// a.GetBufferSetLength(int nLength);
// a.GetData(); данная компонентная функция обращается к внутренним системным и private объектам внутри класса, вне его не применять
// a.GetEnvironmentVariableA(PCXSTR pszVar); установка для данного объекта имени зарегистрированной переменной в системе
// a.GetLength(); получение длины строки
// a.GetManager(); получение указателя на менеджер распределения памяти для ATL-объектов
// a.GetString(); возврат строки (его нужно употреблять вместо перегруженных операций
// a.Insert(int iIndex, XCHAR ch); вставка указанного символа после указанного номера символа в строке
// a.Insert(int iIndex, PCXSTR psz); вставка строки после указанного номера символа в строке
// a.IsEmpty(); проверка строка пустая или нет
// s.Left(int iCount); извлечение слева (с начала строки) указанное число символов
// a.LoadStringA(UINT nID); данная функция загружает строку из ресурсной таблицы
// a.LoadStringA(HINSTANCE hInstance, UINT nID);
// a.LoadStringA(HINSTANCE hInstance, UINT nID, WORD wLanguageID);
// a.LockBuffer(); функция блокировки доступа к строке
// a.MakeLower(); функции приведения к нижнему регистру
// a.MakeReverse(); функция смены регистра
// a.MakeUpper(); функция приведения к верхнему регистру
// s.Mid(int iFirst, int iCount); извлечение подстроки, начиная с номера символа и количество символов
// s.Mid(int iFirst); извлечение подстроки, начиная с номера символа и до конца
// a.OemToCharA();
// a.Preallocate(int nLength); резервирование памяти под размещение строки
// a.PrepareWrite(int nLength);
// a.PrepareWrite2(int nLength);
// a.Reallocate(int nLength); перераспределение нового объема памяти для уже существующей строки
// a.ReleaseBuffer(int nNewLength); преобразование строки из char * обратно в динамическую строку
// a.ReleaseBufferSetLength(int nNewLength); то же самое, но указывается длина строки, которая будет установлена (если она меньше значащих символов в строке, строка будет усечена, если больше - строка будет содержать пустые символы)
// a.Remove(XCHAR chRemove); удаление из строки всех вхлждений указанного символа
// a.Replace(XCHAR chOld, XCHAR chNew); замена всех вхождений одного символа на другой
// a.Replace(PCXSTR pszOld, PCXSTR pszNew); замена всех вхождений одной строки на другую
// a.ReverseFind(XCHAR ch); поиск указанного символа, начиная с конца строки
// a.Right(int iCount); извлечение справа (с конца строки) указанное число символов
// a.SetAt(int iChar,XCHAR ch); установка символа указанного номера в строке, нумерация с 0
// a.SetLength(int nLength); установка длины строки для ATL-объектов
// a.SetManager(TCHAR *pStringMgr); ATL функция - установка менеджера для распределения памяти объектам
// a.SetString(PCXSTR pszSrc); запись в значение переменной класса нового значения строки, рекомендуется вместо оператора присваивания
// a.SetString(PCXSTR pszSrc, int nLength); запись значения строки вместе с указанием длины, используется для переменных с неизвестной длиной строки (для обрезки до нужного размера)
// a.SetSysString(BSTR *pbstr); размещение и установки строки для OLE объектов
// a.StringLength(char *psz); получение длины для оюъектов ATL-строки простых символов (или указанного типа?) без конечного 0
// a.StringLength(wchar_t *psz);
// a.SpanExcluding(PCXSTR pszCharSet); извлечение только тех символов из строки, которые перечислены во второй
// a.SpanIncluding(PCXSTR pszCharSet); извлечение всех символов из строки, которые не перечислены во второй
// a.ThrowMemoryException(); возбуждение строчного исключения
// a.Tokenize(PCXSTR pszTokens, int &iStart); парсинг строки
// s.Trim(); во всей строке удаляются пробелы
// s.Trim(XCHAR chTarget); во всей строке удаляется указанный символ
// s.Trim(PCXSTR pszTargets); во всей строке удаляются символы, перечисленные в строке
// s.TrimLeft(); то же самое, но только слева (с начала строки)
// s.TrimLeft(XCHAR chTarget);
// s.TrimLeft(PCXSTR pszTargets);
// s.TrimRight(); то же самое, но только справа (с конца строки)
// s.TrimRight(XCHAR chTarget);
// s.TrimRight(PCXSTR pszTargets);
// a.Truncate(int nNewLength); усечение строки до заданной длины начиная с первого символа (индекс 0)
// a.UnlockBuffer(); разблокировка доступа к строке
//оставшиеся функции Бог его знает, что они обозначают
PM MAIL   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




[ Время генерации скрипта: 0.0583 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.