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

Константные поля класса - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Даны целые числа a1, …, an, каждое из которых отлично от нуля. http://www.cyberforum.ru/cpp-beginners/thread519923.html
Даны целые числа a1, …, an, каждое из которых отлично от нуля. Если в последовательности отрицатель¬ные и положительные члены чередуются (+,-, +, -, … или -,+,-,+, ...), то ответом должна служить сама исходная последовательность. Иначе получить все отрица¬тельные члены последовательности, сохранив порядок их следования. рещите на С++.Заранее спасибо
C++ Ищу 2 оператора для работы с файлами 1)Оператор,который возвращает кол-во строк в текстовом файле 2)Оператор,который позволяет перемещаться в файле на указанную строку . Заранее благодарю! Добавлено через 2 минуты Владеет ли С++ своими операторами для работы с файлами или он унаследовал все от С ? Вот тут описано,как файлы создавать . На С++ точно также или есть другой способ более новый?... http://www.cyberforum.ru/cpp-beginners/thread519921.html
C++ Задача на вычисление с хранением последовательности значений.
Даны действительные числа a1, …, a28, b1, …, b28 .Члены последовательности c1, …, c29 связаны с членами данных последовательностей соотношениями c29 = 0, c29-i =a29-i/(b29-i- c29-i+1) = (i=1, …, 28). Получить c1, …, c29 . Решите на С++.Буду очень Благодарна!
Класс, который невозможно наследовать C++
Как создать класс, который невозможно наследовать? Видимо, поместить конструктор в раздел private? Кто что скажет по этому поводу?
C++ Данная последовательность из n целых чисел... http://www.cyberforum.ru/cpp-beginners/thread519901.html
1.Данная последовательность из n целых чисел. Найти количество элементов этой последовательности, кратных числу К. 2.Данная последовательность целых чисел, за которой следует 0. Найти сумму нечетных элементов этой последовательности. 3.Найти сумму чисел в десятичном числе К.
C++ форсированная перезапись Форумчане, подскажите, пожалуйста, что такое форсированная перезапись? подробнее

Показать сообщение отдельно
Konstantin_D
14 / 14 / 2
Регистрация: 21.07.2011
Сообщений: 89
16.03.2012, 03:22     Константные поля класса
C++
1
Str& operator=(const Str& s) {return *this;}
если этого не сделать, то будет использоваться оператор присваивания, заданный по умолчанию, выполняющий поэлементное присваивание. А этого в данном случае допустить нельзя!
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
#include <iostream>
#include <cstring>
using std::endl;
using std::cout;
using std::ostream;
 
class Str
{
    char* str;
    Str(const Str& s);
    Str& operator=(const Str& s) {return *this;}
public:
    Str();
    Str(const char* pch);
    ~Str() {delete[] str;}
    friend ostream& operator<<(ostream& os, const Str& s);
};
Str::Str()
{
    str = new char[1];
    str[0] = '\0';
}
Str::Str(const char* pch)
{
    str = new char[strlen(pch)+1];
    strcpy(str,pch);
}
ostream& operator<<(ostream& os, const Str& s)
{
    os << s.str;
    return os;
}
int main()
{
    Str s2("Hello, World!");
    Str s1;
//  Str s1(s2);
//  s1 = s2;
    cout << "s1: *" << s1 << "*\n";
    cout << "s2: *" << s2 << "*\n";
}
Эти объявления делают конструктор копирования и оператор присваивания недоступными.
Попробуй поубирать комментарии в main()
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru