したがって、次のようにコードをコンパイルすることはできません。
std::vector<std::string> split = split("A String Blah");
このメソッド シグネチャを使用すると、次のようになります。
std::vector<std::string> split(const std::string& s)
複数の引数が必要だと言っているからです。文字列だけでは十分ではないのはなぜですか?
この行がある場合:
std::vector<std::string> split = split("A String Blah");
C++ コンパイラはsplit
、右側で参照されてsplit
いる が左側で宣言されているものと同じであると見なします。その結果、実際には astd::vector<std::string>
は 1 つの引数を取る関数ではないため、エラーが発生します。
これを修正するには、変数の名前を変更することを検討してください。
std::vector<std::string> theSplit = split("A String Blah");
お役に立てれば!