diff --git a/src/Markov.hpp b/src/Markov.hpp index 30c3b07..1562e59 100644 --- a/src/Markov.hpp +++ b/src/Markov.hpp @@ -21,7 +21,7 @@ public: std::string regurgitate(int lines=1, std::string start=""); protected: - virtual void swallowLine(std::string line) =0; + virtual void swallowLine(std::string& line) =0; virtual std::string regurgitateLine(std::string start="") =0; }; diff --git a/src/MarkovMatrix.cpp b/src/MarkovMatrix.cpp index 6350389..0214255 100644 --- a/src/MarkovMatrix.cpp +++ b/src/MarkovMatrix.cpp @@ -15,7 +15,7 @@ MarkovMatrix::~MarkovMatrix() } -void MarkovMatrix::feed(std::string line) +void MarkovMatrix::feed(std::string& line) { for (int i=0; i<=int(line.size()); ++i) { int pos = std::max(i-this->length, 0); diff --git a/src/MarkovMatrix.hpp b/src/MarkovMatrix.hpp index 9c6869e..2b5627f 100644 --- a/src/MarkovMatrix.hpp +++ b/src/MarkovMatrix.hpp @@ -11,7 +11,7 @@ public: MarkovMatrix(int length); ~MarkovMatrix(); - void feed(std::string line); + void feed(std::string& line); void reset(int length=0); // reset the matrix, length>0 -> set a new length std::map hiccup(std::string& previous); diff --git a/src/SimpleMarkov.cpp b/src/SimpleMarkov.cpp index 4428d3e..8c2465c 100644 --- a/src/SimpleMarkov.cpp +++ b/src/SimpleMarkov.cpp @@ -54,7 +54,7 @@ void SimpleMarkov::throwUp() } -void SimpleMarkov::swallowLine(std::string line) +void SimpleMarkov::swallowLine(std::string& line) { this->matrix.feed(line); } diff --git a/src/SimpleMarkov.hpp b/src/SimpleMarkov.hpp index 09d2998..3d7c4d7 100644 --- a/src/SimpleMarkov.hpp +++ b/src/SimpleMarkov.hpp @@ -21,7 +21,7 @@ public: virtual void throwUp(); // empty the belly of previous text private: - virtual void swallowLine(std::string line); + virtual void swallowLine(std::string& line); virtual std::string regurgitateLine(std::string start=""); MarkovMatrix matrix;