雖然已經學過,但是重新複習的時候,突然覺得fstream file ; if(!file) … 很神奇!就手癢做一個簡單版的。
/* Usage: To implement a object as fstream with operator ! and open()
* Author: Allen (allen501pc@hotmail.com)
* Date: 04/14/2009
* Output:
* object has been opened!
*/
#include <iostream>
using namespace std;
class object
{
private:
bool isset;
bool notopen;
public:
object()
{
isset=false;
notopen=true; /* Set it is not opened! */
}
bool operator!(); /* ! operator for checking open or not */
void open()
{
notopen=false; /* set it is opened */
}
};
/* operator ! for checking that opened or not
* if open, return false
* Or, return true
*/
bool object::operator!()
{
return this->notopen;
}
int main(int argc,char * argv[])
{
object ob; /* take class object as ob */
ob.open(); /* open */
if(!ob)
{
cout << "object has not been opened! " << endl;
}
else
cout << "object has been opened! " << endl;
return 0;
}