?? stream_wrapper.h
字號:
/* MeCab -- Yet Another Part-of-Speech and Morphological Analyzer $Id: stream_wrapper.h 1528 2006-08-07 02:39:50Z taku $; Copyright(C) 2001-2005 Taku Kudo <taku@chasen.org> Copyright(C) 2004-2005 Nippon Telegraph and Telephone Corporation This is free software with ABSOLUTELY NO WARRANTY. This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or(at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA*/#ifndef _CRFPP_STREAM_WRAPPER_H#define _CRFPP_STREAM_WRAPPER_H#include <iostream>#include <fstream>#include <cstring>namespace CRFPP { class istream_wrapper { private: std::istream* is; public: std::istream &operator*() const { return *is; } std::istream *operator->() const { return is; } istream_wrapper(const char* filename): is(0) { if (std::strcmp(filename, "-") == 0) is = &std::cin; else is = new std::ifstream(filename); } ~istream_wrapper() { if (is != &std::cin) delete is; } }; class ostream_wrapper { private: std::ostream* os; public: std::ostream &operator*() const { return *os; } std::ostream *operator->() const { return os; } ostream_wrapper(const char* filename): os(0) { if (std::strcmp(filename, "-") == 0) os = &std::cout; else os = new std::ofstream(filename); } ~ostream_wrapper() { if (os != &std::cout) delete os; } };}#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -