TBuf в TInt Symbian

Я просто хочу преобразовать TBuf в TInt в Symbian. Я попытался сделать это следующим образом:

TBuf<2> buf;
buf.Copy( _L("10"));

TInt valInt;
TLex8 lex(buf);
lex.Val(valInt);

Здесь я получаю сообщение об ошибке:

Error:  #289: no instance of constructor "TPtrC8::TPtrC8" matches the argument list
        argument types are: (TBuf<2>)

Помощь будет очень признательна!

Спасибо


person Community    schedule 07.08.2009    source источник


Ответы (1)


Если вы используете TLex8, вы должны использовать TBuf8.

Попробуйте это (мой Symbian C++ ржавый, но это должно быть близко):

TBuf8<2> buf;
buf.Copy(_L8("10"));

TInt valInt;
TLex8 lex(buf);
lex.Val(valInt);
person Alex B    schedule 07.08.2009
comment
.. или альтернативно используйте TLex (псевдоним для TLex16). Кстати, buf.Copy("10") не будет работать, вам нужно, например. _L8("10"), чтобы сделать его литералом дескриптора. - person laalto; 07.08.2009