string strMap[8] = {"abc", "def", "ghi", "jkl", "mno", "pqrs", "tuv", "wxyz"};
//string digits received as parameter in function // digits = "234";
如下访问它:
int digitmapIndex = digits[index] - 46; //index is some int 0,1 etc..
int mapstr_len = strMap[digitmapIndex];
或者
int mapstr_len = strMap[digits[index] - 46];
错误:
Line 25: Char 13: error: no viable conversion from 'std::string' (aka 'basic_string<char>') to 'int'
int mapstr_len = strMap[digits[index] - 46];
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/basic_string.h:816:7: note: candidate function
operator __sv_type() const noexcept
这行没有意义:
int mapstr_len = strMap[digitmapIndex];
strMap[digitmapIndex]
是一个string
对象,不能分配给int
。
auto temp = strMap[digitmapIndex];
从中temp
,您可以按索引访问其字符。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句