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

Указатели/масивы - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Список вопросов по Borland C http://www.cyberforum.ru/cpp-beginners/thread163866.html
Помогите решить,скоро перездача,а я только начал готовиться......Все вопросы-в фото...
C++ Где можна скачать книгы по С+ ? Где можна скчать книгы по С+ ????О_о http://www.cyberforum.ru/cpp-beginners/thread163820.html
С чего начать программировать на C++ C++
С чего начать кодить на C+
C++ Написать программу, которая находит все пары А и В для числа Р
Пиплы , пожалейте помогите если есть какието мысли впишитесь!!ПЛЗ суть такова написать прогу на С+ Очевидно, что любое натуральное число Р (Р> 7) можно представить в виде: Р = А * 3 + В 5. Написать программу, которая находит все пары А и В для числа Р. Число Р генеруеться случайным образом. Оффициальным языком форума является русский язык. В дальнейшем темы с заданиями на языках отличных...
C++ Не определяется функция getch http://www.cyberforum.ru/cpp-beginners/thread163807.html
Ошибку выдаёт getch(); //--------------------------------------------------------------------------- #pragma hdrstop #include<math.h> #include<iostream.h> #include <tchar.h> //--------------------------------------------------------------------------- #pragma argsused
C++ Целочисленная квадратная матрица Даны: натуральное число m, челые числа а1, ... , аm и челочисленная квадратная матрица порядка m. Строку с номером i матрицы назовём отмеченной, если ai>0, и неотмеченной в противном случае. Подсчитать число отрицательных элементов матрицы, расположенных в отмеченных строках. Через Dev-C++ получил: #include <iostream.h> using namespace std; int main() { unsigned int m,i,j,counter=0; ... подробнее

Показать сообщение отдельно
LineStown
 Аватар для LineStown
63 / 63 / 3
Регистрация: 04.08.2010
Сообщений: 399
06.09.2010, 16:44     Указатели/масивы
Доброго времени суток
Условие задачи:
Создайте класс, который позволит вам использовать 10 отдельных массивов по 10 элементов, как один одномерный массив, допуская применение операций массива. То есть мы можем получить доступ к элементам массива, записав в функции main() выражение типа a[j], а методы класса могут получить доступ к полям класса, используя двухшаговый подход. Перегрузим операцию [ ] , чтобы получить нужный нам результат.
Заполним массив данными и выведем их. Хотя для интерфейса класса использованы операции индексации массива, вам следует использовать указатели внутри методов класса

Вот решение, которое я написал....
Мне оно кажется не сомсем верным.
Хотелось бы услышать ваши мнения по поводу самого условия(что собственно нужно) и по поводу решения.
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
#include<iostream>
using namespace std;
class tenmas
{
private:
    int **mas;
public:
    tenmas()
    {
        mas=new int *[10];
        for(int i=0;i<10;i++)
        {
            *(mas+i)=new int [10];
        }
    }
    void input(int x,int y,int n)
    {
        *(*(mas+x)+y)=n;
    }
    void input(int *x,int y,int n)
    {
        *(x+y)=n;
    }
    void print(int x,int y,int n)
    {
        cout << *(*(mas+x)+y) << endl;
    }
    void print(int *x,int y)
    {
        cout << *(x+y) << endl;
    }
    int* operator [](int a)
    {
        return *(mas+a);
    }
};
int main()
{
    setlocale(LC_ALL,"Russian");
    tenmas tm;
    tm.input(tm[2],3,4);
    tm.print(tm[2],3);
    return 0;
}
Добавлено через 28 минут
Всё, вроде бы понял
выражение
C++
1
tm[2][3]=6;
прекрасно работает с таким классом.
Просто видать сработала привычка девирсанта, использовать a[x,y] вместо a[x][y]
с паскаля начинал....

Но не откажесь выслушать другие варианты
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 23:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru