Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.04.2011, 23:44   #1
zhenya.ya
Форумчанин
 
Регистрация: 29.11.2009
Сообщений: 142
Сообщение перегрузка []

Мне нужен класс, для которого оператор [] перегружен, чтобы
выполнять чтение символов из указанной позиции файла.

В моем примере у меня сделано так: я могу закидывать в файл символ, стоящий на конкретной позицци и ,соответственно, считываю его. (т.е. если есть строка "12345" я могу, написав obj[2], закинуть в файл тройку и соответсвенно считать ее.

Как можно подкорректировать под задание? (т.е. если есть строка "12345", указав позицию ,например, 2 мне выдалось 345) ?

Код:
template <class T>
class base
{
private:
	ofstream *file;
	T *str;
	int size;
public:
		 base(string filename, T *str1)
		 {
			 file= new ofstream(filename.c_str());

		size = strlen(str1);
		str = new T[size+1];
		strcpy(str,str1);
	}
	~base()
	{
		file->close();
		delete []str;
	}
	base& operator [](unsigned index)
	{
		
		(*file)<<str[index]<<endl;
		return *this;
	}
};

void main()
{
	base<char> obj("D:\\my_projects\\1.txt","12345");

	obj[2];

	ifstream f;
	char *p = new char[100];
	f.open("D:\\my_projects\\1.txt");
	if(f.fail()==1) cout<<" File not open"<<endl;
	else
	{
		f.getline(p,99);
		cout<<p<<endl;
	}
	f.close();
	delete []p;
	system("pause");

}
zhenya.ya вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
C++ Перегрузка GLAM1 Общие вопросы C/C++ 7 01.04.2011 15:49
Перегрузка + Blad47 Помощь студентам 4 21.03.2011 01:49
Перегрузка в С++ anna01 Помощь студентам 1 24.11.2010 12:52
Перегрузка (С++) RodionL3 Помощь студентам 1 22.04.2010 10:48
Перегрузка ++ counter Общие вопросы C/C++ 3 20.12.2008 13:30