• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:vectorを引数とする関数)

vectorを引数とする関数でコンパイルエラーが発生する理由と解決方法

このQ&Aのポイント
  • C++のプログラムでvectorを引数とする関数を使用していますが、コンパイルエラーが発生しています。具体的には、tmp2[1]の部分でエラーが発生しています。
  • このエラーは、関数へのポインタが正しく渡されていないため発生しています。vectorをポインタとして渡す場合、ポインタのアドレスを取得する必要があります。
  • 解決方法としては、func関数を以下のように修正する必要があります。 ``` double func(std::vector<double> *tmp2){ return (*tmp2)[1]; } ```

質問者が選んだベストアンサー

  • ベストアンサー
  • Werner
  • ベストアンサー率53% (395/735)
回答No.1

関数funcにおいてtemp2はvectorへの「ポインタ」なのですから *を使って参照しなければなりません。  return (*tmp2)[1]; C++なので、参照渡しを使っても良いでしょう。

noname#108554
質問者

お礼

ありがとうございます。 解決しました。

関連するQ&A