この例でテンプレート ソリューションまたは何かを使用する方法はありますか? 現在、クラス C の parse() 関数の戻り値の型は、使用されている型によって異なります。
私はクラスAを持っています:
class A {
std::vector<SomeClass*> parseData(const char *data);
}
そして、私はクラスBを持っています
class B {
std::string parseData(const char *data); }
次に、クラス C で call right クラス メソッドを呼び出したいと思います。
class C {
std::vector<SomeClass*> parse { A::parseData(_data); }
std::string parse { B::parseData(_data); }
void setData(std:string data) { _data = data; }
std:string _data;
}
int main()
{
C c1.setData(data_with_many_strings_and_numbers);
C c2.setData(data_with_one_string);
std::vector<SomeClass*> someClassData = c1.parse();
std:string someString = c2.parse();
}