#pragma once #include #include class search { public: static const size_t defsize = 16; search(size_t csize_arg = defsize) : csize(csize_arg) {} bool match(const std::vector &ctext, const std::string &wordkey); protected: bool match(const std::string &ctext, const std::string &wordkey); size_t csize; }; class search_priv : public search { public: search_priv(const std::string &key, size_t csize_arg = defsize) : search(csize_arg), master_key(key) {} std::vector transform(const std::vector &words); std::string wordkey(const std::string &word); private: std::string transform(const std::string &word); std::string master_key; };