问一道菜鸟题...~~~(C++的)
创建一个包含一个string对象的Text类。来保存一个文件的内容。写两个构造函数,一个是默认的构造函数。另一个构造函数带有一个string参数。它是要打开的文件的文件名,当使用第二个构造函数时,打开这个文件并把内容读到string成员对象中,增加一个成员函数,contents()来返回string。以便打印。在main()中使用Text打开一个文件并打印该文件的内容。
注:我们现在学函数的重载,这个题重载我知道,怎么读文件我也知道,但是构造函数一传进来string类型的参数就报错,说什么无法转换....请问这个题应该怎么写呀?
[解决办法]
#pragma once
#include "iostream"
#include "fstream"
#include "string"
using namespace std;//这我已在前面说过了注意看呢!!!
class Text
{
public:
Text(void);
Text(string);
~Text(void);
void print();
string text;
};
#include ".\text.h"
#include "iostream"
#include "fstream"
#include "string"
using namespace std;
Text::Text(void)
{
}
Text::Text(string s1)
{
ifstream in;
in.open(&s1[0]);
in>>text;
in.close();
}
Text::~Text(void)
{
}
void Text::print()
{
cout <<text <<endl;
}
#include "iostream"
#include "string"
#include "Text.h"
using namespace std;
void main()
{
Text t("1.txt");
t.print();
}