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

Перегрузка operator[][][] - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Строка: Найти наибольше количество идуших подряд одинаковых символов http://www.cyberforum.ru/cpp-beginners/thread946343.html
дан текст. Найти наибольше количество идуших подряд одинаковых символов
C++ Вызов LoadLibrary из DLL Есть две Dll - DLL_A и DLL_B Использую MS Visual Studio 2010 C++(MFC) Из основной программы загружаю DLL_A через LoadLibrary, далее вызываю функцию из DLL_A, которая должна загрузить DLL_B через LoadLibrary. Так вот загрузка DLL_A и вызов функции проблем не вызывает, но когда пытаюсь вызвать LoadLibrary уже из DLL_A, то система выдает исключение и ничего не работает, т.е. сбой происходит... http://www.cyberforum.ru/cpp-beginners/thread946338.html
Проверить является ли матрица треугольной C++
Всем добрый день. У меня есть матрица, по которой составлен вектор. А как проверить, является ли матрица треугольной? Вот мой код: #include <conio.h> #include <iostream> #include <vector> #include <ctime> using namespace std; int main() {
C++ Строка: Найти наибольшее количество идуших подряд пробелов.
Дано предложения. Найти наибольшее количество идуших подряд пробелов.
C++ Пятнашки http://www.cyberforum.ru/cpp-beginners/thread946274.html
# include <iostream> using namespace std; //# include <russian.h> # include <stdlib.h> # include <conio.h> # include <time.h> const int SIZE=4; void main() {
C++ Нужны исходники кода из книги от Э. Гамма, Р. Хелм, Р. Джонсон, Дж. Влиссидес книга: Приемы объектно-ориентированного проектирования. Паттерны проектирования автор: Э. Гамма, Р. Хелм, Р. Джонсон, Дж. Влиссидес где взять исходники. спасибо. ps. по почте не приходит. подробнее

Показать сообщение отдельно
ninja2
 Аватар для ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
31.08.2013, 15:32     Перегрузка operator[][][]
Здорова господа!!!

Как перегрузить operator[][] для класса или operator[][][] ???

Что нужно из него возвращать?
От что то пытался но не получается:
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
43
44
45
46
47
#include <iostream>
using std::cout;
using std::endl;
 
class cl
{
    int mass[3][3];
    int kkk;
public:
    cl(int a)
    {
        for(int i=0;i<3;i++)
            for(int j=0;j<3;j++)
                mass[i][j]=a;
    }
    void print()
    {
        for(int i=0;i<3;i++)
        {
            for(int j=0;j<3;j++)
                cout <<mass[i][j]<<' ';
            cout <<endl;
        }
    }
 
    int& operator[](int i)
    {
        if(kkk==-1)
        {
            kkk=i;
        }
        else if(kkk!=-1)
        {
            return mass[kkk][i];
        }
    }
};
 
int main()
{
    cl k(3);
    k.print();
 
    k[0][0]
 
    return 0;
}
Добавлено через 1 минуту
Что то мне кажется но нужно использовать оператор приведения типа чтоли????
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 03:48. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru