kemi (statz) | #2, Főfasz (2970) |
1454 | #215f | ^ | Idézet | Wed, 07 Nov 2012 15:53:05 +01 |
193.224.*.* | 193.224.*.* |
A C++ valamiért nem szereti a dinamikus stringtömböket, úgyhogy vektorral valósítottam meg. Persze lehet írni egy stringvektor osztályt amibe ezeket be lehet rakni metódusként. C++-szal azért már talán többen foglalkoznak. StrArrFunc.h #ifndef STRARRFUNC_H_ #define STRARRFUNC_H_ #include <iostream> #include <vector> using namespace std; void SplitString(string s, char delim, vector<string>* dest); string GlueArray(vector<string> src, char delim); long int ArrayPosition(vector<string> data, string search); #endif /* STRARRFUNC_H_ */ StrArrFunc.cpp #include "StrArrFunc.h" using namespace std; void SplitString(string s, char delim, vector<string>* dest) { int count = 0; string sub = ""; int l = s.length(); for (int i = 0; i < l; i++) { if (s[i] == delim) { count++; dest->push_back(sub); sub = ""; } else { sub += s[i]; } } dest->push_back(sub); } string GlueArray(vector<string> src, char delim) { string GlueArray = ""; long int l = src.size() - 1; if (l > -1) { for (int i = 0; i < l; i++) { GlueArray += src[i]; GlueArray += delim; } GlueArray += src[l]; } return GlueArray; } long int ArrayPosition(vector<string> data, string search) { long int l = data.size(); for (long int i = 0; i < l; i++) { if (data[i] == search) { return i; } } return -1; } |