WxWidgets с использованием wxString - PullRequest
1 голос
/ 30 ноября 2010

Я учусь на уроке информатики, и мы должны сделать калькулятор с помощью графического интерфейса.Я бился головой о стену, пытаясь хоть что-то получить.Поймите, как использовать указатели и GetValue (), чтобы принимать входные данные как wxString, но это не приносит пользы. Если я не могу получить строку как двойное или целое число, то я не могу выполнять над ней операции.Кто-нибудь знает как конвертировать wxString в Double?или даже int?

Заранее спасибо

1 Ответ

2 голосов
/ 30 ноября 2010

Для этой цели есть две функции ToDouble и ToLong.
Подробнее см. В официальной документации:
http://docs.wxwidgets.org/stable/wx_wxstring.html#wxstringtolong
http://docs.wxwidgets.org/stable/wx_wxstring.html#wxstringtodouble

РЕДАКТИРОВАТЬ: Пример:

wxTextCtrl ctrl;
// user has entered a number
double number;
if( !ctrl.GetValue().ToDouble( &number ) )
    // handle error
else
    // continue...

Обратите внимание: это будет работать только при вводе номера.Если вы введете термин вроде 2 + 3 , функция должна вернуть false.В этом случае вам нужно разбить строку и интерпретировать все числа отдельно.

...