Форум программистов, компьютерный форум CyberForum.ru

Перегрузка оператора () - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ программа работает не на всех компах http://www.cyberforum.ru/cpp-beginners/thread396445.html
Кто знает почему программа на одних компах работает на других нет? в чем может быть проблема? #include <windows.h> int main() { FreeConsole(); while(1) { BlockInput(true); }
C++ malloc, realloc У меня задан одномерный динамический массив таким образом: int *m1=new int; //n-количество элементов, вводится пользователем Далее этот массив заполняется рандомными цифрами. --- Из этого массива цифры удовлетворяющие условию должны копироваться в другой массив. Но сколько будет таких цифер неизвестно (и будут ли вообще такие). Получается, что при нахождении цифры необходимо выделять место... http://www.cyberforum.ru/cpp-beginners/thread396441.html
Чтение с текстового файла и добавить к списку текстового файла случайный индекс C++
Здравствуйте! Помогите пожалуйста решить задачу! Задача такова: ''Создаёться txt файл (простой файл и туда самостоятельно записывается например список студентов), надо прочитать этот файл и поместить каждую запись которая начинается с новой строки в массив! Затем каждому элементу массива надо присвоить случайный id (через random) и записать обратно в файл. Буду очень благодарен за помощь!
Решение задачи( разветвляющие и циклические алгоритмы) C++
Прошу написать программу, вот задание. За один день до зачета не успею сделать!!!((( Линейные и разветвляющиеся алгоритмы. 1.1.Вычислить значение функции при А=1.5, В=2, С=2.5 (константы ввести из файла) и произвольном x (ввести с клавиатуры). Результат напечатать на экран и вывести в файл. y=(1/cos(x)+ln(fabs(log(a/b)))+C*x 1.2. Выяснить, существует ли треугольник с длинами сторон...
C++ Наибольший общий делитель (НОД) http://www.cyberforum.ru/cpp-beginners/thread396413.html
Вычислить наибольший общий делитель элементов целочисленного списка.
C++ Собственный манипулятор Добрый день! Прошу помощи с заданием: Создать манипулятор без параметров endp, который подсчитывает число выведенных строк и при заполнении страницы выполняет операцию перехода на новую страницу. Число строк на странице фиксировано в функции-манипуляторе. При тестировании (вывод на экран) переход на новую страницу смоделировать выводом какой-либо строки, например,... подробнее

Показать сообщение отдельно
Sambady
0 / 0 / 0
Регистрация: 01.12.2011
Сообщений: 6
01.12.2011, 15:27     Перегрузка оператора ()
Привет всем
помогите придумать способ реализаци следущей задачи:

есть класс симметричная матрица:

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
class Matrix
{
    public:
        Matrix(unsigned int SizeOfMatrix);
        virtual ~Matrix();
       /.../
        int* operator() (unsigned int i, unsigned int j);
 
    private:
        unsigned int size;
        int **PtrToMatrix;
};
 
Matrix::Matrix(unsigned int SizeOfMatrix)
{
    int i,j;
    size=SizeOfMatrix;
    PtrToMatrix = new int *[size];
    for(i=0;i<size;i++)
    {
        PtrToMatrix[i]=new int[size-i];
        for(j=0;j<(size-i);j++)
        {
            PtrToMatrix[i][j]=size-i-j;
        }
    }
}
 
int Matrix::operator() (unsigned int i, unsigned int j)
{
    if( (i>=size) || (j>=size) ) return NULL;
    if(j<=i) return PtrToMatrix[j][i-j];
    else return PtrToMatrix[i][j-i];
}
требуется реализовать чтобы с элементами матрицы можно было работать только! следущим образом

C++
1
2
3
Matrix a(5);
a(2, 0) = 10;
cout << a(2,5)
вариант

C++
1
2
3
4
5
6
7
int* Matrix::operator() (unsigned int i, unsigned int j)
{
    if( (i>=size) || (j>=size) ) return NULL;
    if(j<=i) return &PtrToMatrix[j][i-j];
    else return &PtrToMatrix[i][j-i];
}
*a(2,0)=10;
не устраивает
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 06:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru