Форум программистов, компьютерный форум, киберфорум
Наши страницы

Перегрузка оператора индексации и присваивания (C++) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Работа с файлами базы данных http://www.cyberforum.ru/cpp-beginners/thread432554.html
Здравствуйте. Нужно написать программу для поддержки последовательного метода доступа к файлу базы данных на тему "Книжный магазин", которая реализует следующеие функции: 1.Создание файла базы...
C++ Написать программу для вычисления функции F помогите решить данные 2 задачи 1.Использовать оператор while Написать программу для вычисления функции F, при этом, если не указано количество шагов (бесконечность), то вычисления проводить с... http://www.cyberforum.ru/cpp-beginners/thread432552.html
Вопрос о перегрузке ++/-- C++
Рассмотрим простой пример постфиксной и префиксной операции инкремента: int main() { int i=0; cout<< i++; cout<< ++i; _getch(); return 0; }
Можно ли это написать как то проще C++
#include <cstdlib> #include <iostream> #include <stdlib.h> #include <math.h> using namespace std; /* В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) количество...
C++ Файл структур: сортировка по выбираемому пользователем полю http://www.cyberforum.ru/cpp-beginners/thread432539.html
Имеется файл, состоящий из отдельных строк структуры. Нужно написать сортировку по выбираемому пользователем полю В файле 5 полей: 1-Фамилия 2-Имя 3-Отчество 4-Группа 5-Оценка
C++ Хелп с POST на C++ Друзья. Помогите переписать код на C++ $sDomain = 'ХХХ.ХХХ.ХХХ.50' ;домен или ip-адрес $iPort = 80 ;порт $sParameters =... подробнее

Показать сообщение отдельно
Dekio
Фрилансер
Эксперт С++
5837 / 1218 / 214
Регистрация: 23.11.2010
Сообщений: 3,378
Записей в блоге: 1
21.01.2012, 23:37
zum Beispiel
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <iostream>
 
class Foo
{
    public:
        Foo(int num = 1)
        {
            CurSize = num;
            arr = new int[CurSize];    
        }
        ~Foo()
        {
            delete []arr;
        }
        int &operator [](int idx)
        {
            if(idx > CurSize)
            {
                temp = new int [CurSize];
                for(int i = 0; i < CurSize; i++)
                    temp[i] = arr[i];
                arr = new int[idx];
                for(int i = 0; i < CurSize; i++)
                    arr[i] = temp[i];
                delete []temp;
                CurSize = idx;
            }
            return arr[idx];
        }
    protected:
        int CurSize, *arr, *temp;
}; 
 
int main()
{
    Foo obj(3);
    obj[2] = 8;
    obj[5] = 10; // 5 > 3
    std::cout<<obj[2]<<" "<<obj[5]<<std::endl;
    system("pause");
    return 0;
}
3
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru