我有一个类可以解析一些传入的串行数据。在解析之后,一个方法应该返回一个包含一些解析数据的字节数组。传入的数据长度未知,所以我的返回数组总是不同的。
到目前为止,我的方法分配了一个比我需要返回的更大的数组,并用我的数据字节填充它,我保留了一个索引,以便我知道我在字节数组中放入了多少数据。我的问题是我不知道如何从实例方法中返回它。
void HEXParser::getParsedData()
{
byte data[HEX_PARSER_MAX_DATA_SIZE];
int dataIndex = 0;
// fetch data, do stuff
// etc, etc...
data[dataIndex] = incomingByte;
_dataIndex++;
// At the very end of the method I know that all the bytes I need to return
// are stored in data, and the data size is dataIndex - 1
}
在其他语言上,这很简单,但我对 C++ 不是很精通,而且我完全被卡住了。
谢谢!