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

Создать производный класс ТРОИЧНЫЙ ВЕКТОР от класса Vector - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Сжать массив, удалив из него все элементы, модуль которых находится в интервале [a,b]. http://www.cyberforum.ru/cpp-beginners/thread209062.html
| Исходные данные - n вещественных величин. || При написании программы используйте динамические массивы. 1. Найти максимальный элеметн массива. 2. Найти сумму элементов массива, ...
C++ Необходимо написать программу, которая рандомно задает значения чисел и записывает их в файл Здравствуйте! Помогите, пожалуйста. Необходимо написать программу на С++, которая рандомно задает значения пяти чисел от 0 до 100 и записывает их в текстовый файл http://www.cyberforum.ru/cpp-beginners/thread209057.html
C++ Write memory strings
Привет форумчане :) я пользуюсь C++ Builder 6 я вот тут не могу разобраться HANDLE pHandle; HWND wnd; wnd = FindWindow(0,"TITLE"); DWORD pid;
C++ Гамильтонов цикл
Дали задание сделать программу вычисляющюю гамильтонов цикл. У меня уже бошка шири плеч, не как не получается, вот мои наброски, помогите плиз #include "stdio.h" #define n 8 int r={0}; int a={ ...
C++ обработка структурных данных (статический список). срочно http://www.cyberforum.ru/cpp-beginners/thread209042.html
(Ввод с клавиатуры). Список участков предприятия с разбивкой по цехам. Количества цехов и участков каждого цеха переменны. Для фрагмента модели, являющегося одномерным списком, составить модуль...
C++ Вывести строку, удалив предварительно повторяющиеся слова Ввести строку. Вывести её, удалив предварительно повторяющиеся слова. Очень нужна помощь!!! подробнее

Показать сообщение отдельно
lemegeton
2925 / 1354 / 135
Регистрация: 29.11.2010
Сообщений: 2,725
15.12.2010, 22:46
C++
1
2
3
4
Vector::Vector()
{
        count=2;// двойка здесь присвоена для того, чтобы программа, в ходе исправления, выполнялась без ошибок.
}
Хитро грабли разложили. Будет трудно отыскать.
C++
1
2
3
4
Vector A;
cout << A.num(); // сразу два значения в векторе?
cout << assign(1, 1);  // а если туда записать чего-нибудь?
                        // упало...
C++
1
2
3
4
5
threeVector::threeVector(int *arr, int n):Vector(n)//конструктор
{
         mass=arr; // копируется только указатель, значения не копируются
         cout << "threeVector created " << count << "\n";
}
C++
1
2
3
4
5
6
7
8
9
threeVector & threeVector::operator=(threeVector & rhs)
{
        if(this==&rhs)
                return *this;
        *mass=rhs.item(0); // данные не копируются, если присваеваемый объект 
                                   // будет удален, mass будет указывать в нераспределенную
                                   // область памяти
        return *this;
}
Далее, для решения вашей задачи, вам нужно убрать vector::operator[], он всю малину попортит, в этом операторе нельзя проверять присваиваемое выражение.
C++
1
2
3
4
5
void threeVector::SetKomp(int x,int i)
{
        // Тут организуйте проверку на значение x.
        mass[i]=x;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru