0

この関数では:

int marshall_subscription (string sub, uint32_t sub_id, vector<u_int8_t> const & ser)
{
     //Do something here to build serial_data
      *ser = serial_data;
}

エラーが発生します:

error: no match for 'operator*' in '*ser'

STL を参照渡しする方法ではないでしょうか。

4

2 に答える 2

2
 *ser = serial_data;

serはポインターではなく、参照であるため、逆参照する必要はありません。

 ser = serial_data;

また、serは参照として宣言されているconstため、代入するとエラーになります。const修正するには、非参照に変更してください:

int marshall_subscription(..., std::vector<u_int8_t>& ser);
于 2013-07-12T20:34:58.257 に答える