Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ Перебор слова https://www.cyberforum.ru/ cpp-beginners/ thread2270459.html
Объясняю: в программе есть цикл for, в котором есть переменная string x. В нем выполняются некоторые действия, а после string переменная меняет свое значение. Как сделать так, что например в начале программы string x = house, потом по очереди она меняет свое значение на country, kat, dog, higway и т.д. В for можно использовать любое условие, я думаю одно из них это количество слов, на кот....
C++ В целочисленном массиве найти количество элементов, находящихся вне заданного интервала
Всем доброго времени суток! С недавних пор начал изучать язык С++. Учусь в универе. Преподаватель задание файлы которого я прикрепил. Вот только задание из двух частей, я взял само задание без описания работы ну и соответственно сделал так как я его вижу. Код тоже прилагаю. Подскажите можно ли этот код разбить на программные модули (что-бы требование преподавателя были выполнены)? Если можно то...
C++ Вычислить и вывести на экран в виде таблицы значения функции Вычислить и вывести на экран в виде таблицы значения функции y(x) на первом интервале с шагом dx (dx, Xн, Xк задаются пользователем). Y = \begin{cases} & -ax^2 \text{ if } x>0 \text{ and } b\neq 0 \\ & \frac{x}{x-c}+5.5 \text{ if } x>0 \text{ and } b=0 \\ & \text{ else } \frac{x}{-c} \end{cases} https://www.cyberforum.ru/ cpp-beginners/ thread2270424.html C++ Дополнить класс методом remove Задан шаблонный класс для описания вектора. Дополнить класс методом remove. #include <cstring> #include <iostream> using namespace std; template<class T> class vector { private: https://www.cyberforum.ru/ cpp-beginners/ thread2270416.html
C++ Дополнить класс методом pop
Задан шаблонный класс для описания стека. Дополнить класс методом pop. #include <cstring> #include <iostream> using namespace std; template<class T> class node { public:
C++ Найти наибольший и наименьший элементы массива и поменять их в массиве местами https://www.cyberforum.ru/ cpp-beginners/ thread2270393.html
Дано одномерный массив. Найти наибольший и наименьший элементы массива и поменять их в массиве местами. Увеличить в 2 раза элементы, которые размещены в массиве между наибольшим и наименьшим его элементами.
C++ Распечатать строку, которая содержит заданное слово заданное количество раз Доброго времени суток! Помогите написать код по заданию! Само задание: Даны несколько строк, содержащих не более 100 символов каждая. Строки состоят из слов, разделенных пробелами. Распечатать строку, которая содержит заданное слово заданное количество раз. https://www.cyberforum.ru/ cpp-beginners/ thread2270390.html Сформировать новый массив, разделив каждый элемент входного массива на полученное значение C++
Найти сумму элементов одномерного массива дробных чисел размера N. Сформировать новый массив, разделив каждый элемент входного массива на полученное значение. Результат напечатать в виде параллельных столбцов элементов входного и созданного массива.
C++ Найти сумму четных и произведение нечетных элементов массива https://www.cyberforum.ru/ cpp-beginners/ thread2270383.html
Дано одномерный целочисленный массив. Найти сумму четных и и произведение нечетных элементов массива
C++ Найти строку с максимальными элементами и переставить ее https://www.cyberforum.ru/ cpp-beginners/ thread2270379.html
Дан прямоугольный массив из целых чисел. Найти в нем строку с двумя максимальными элементами и переставить ее на первое место, сдвигая остальные на одну позицию вниз
Написать в одном коде циклы while и do/while C++
Необходимо написать в одном коде циклы while и do while: #include <iostream> #include <cmath> using namespace std; int main() { long double a, n=1,a_1, e=0.0001; a=pow(-1,n-1)/(pow(n,n));
C++ Бинарные файлы. Записать структуру данных в файл и обеспечить запись и чтение записать структуру данных в файл и обеспечить запись и чтение,структура может быть любой,только нужно ее вводить самому с клавиатуры. https://www.cyberforum.ru/ cpp-beginners/ thread2270328.html
6 / 4 / 3
Регистрация: 28.10.2014
Сообщений: 149
05.07.2018, 20:39  [ТС] 0

Константные и неконстантные методы в классе - C++ - Ответ 12523402

05.07.2018, 20:39. Показов 3923. Ответов 13
Метки (Все метки)

Ответ

Спасибо, знал что порядок инициализации важен,но не думал ,что порядок инициализации может зависеть от порядка объявления. Исправил) опечатку(
Но мне кажется , что они хотят чтобы в этот шаблон можно было загнать не только одномерный массив, но и двумерный. Потому что я не могу понять что им ещё может не нравится ,ведь у меня на VS2012 всё работает?
Кликните здесь для просмотра всего текста

^~~~
main.cpp:84:2: note: candidate: Array<T>::Array(const Array<T>&) [with T = Trace]
Array (const Array & P):size_(P.size_),data(new T(size_))
^~~~~
main.cpp:84:2: note: candidate expects 1 argument, 0 provided
main.cpp:79:11: note: candidate: Array<T>::Array(size_t, const T&) [with T = Trace; size_t = long unsigned int]
explicit Array(size_t size,const T& value =T()):size_(size),data(new T[size_])
^~~~~
main.cpp:79:11: note: candidate expects 2 arguments, 0 provided

Кликните здесь для просмотра всего текста
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
48
49
50
51
52
template <typename T>
class Array
{
public:
 
    explicit Array(size_t size,const T& value =T()):size_(size),data(new T[size_])
    {
        for (int i=0;i<size_;i++)
            data[i]=value;
    }
    Array (const Array & P):size_(P.size_),data(new T(size_))
    {
            for (int i=0;i<size_;i++)
                data[i]=P.data[i];
    }
 
    ~Array()
    {
        delete []data;
    }
    
    Array &operator=(Array const &P)
    {
        if(this!=&P)
        {
            delete [] data;
            size_=P.size_;
            data=new T[size_];
            for(int i=0;i<size_;i++)
                data[i]=P.data[i];
        }
        return *this;
        
    }
    size_t size() const
    {
        return this->size_;
    }
        //оператор доступа по индексу
    T   & operator[](size_t i) 
    {
        return data[i];
    }
    const T   & operator[](size_t i) const
    {
        return data[i];
    }
    private:
    size_t size_;
    T* data;
 
};


Вернуться к обсуждению:
Константные и неконстантные методы в классе C++
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.07.2018, 20:39
Готовые ответы и решения:

Константные поля и методы
А можете объяснить, что такое константные поля и методы в классах?

Дублирование кода и константные методы
Есть метод method возвращающий ссылку на внутреннее значение объекта. Существует в двух вариантах -...

Константные методы и объекты класса
Это необходимость, или явная подстраховка того, что бы объект (константный) работал с себе...

Как правильно объявлять статические константные объекты в классе?
В классе надо объявить статичные константные строки. Типа class A { public: static const...

13
05.07.2018, 20:39
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.07.2018, 20:39
Помогаю со студенческими работами здесь

Константные и не константные ссылки. Приведения типов. Нужно уточнение
Не очень понимаю в чем различие (2,3 строчки). int x = 10; double &amp;y = x; const double &amp;y...

Зачем в C++ существуют неконстантные итераторы?
Зачем в C++ существуют неконстантные итераторы? Почему было позволено изменять коллекции во время...

Неправильно работают методы в классе
Есть класс GameObject в котором есть виртуальный метод draw: class GameObject { public: float...

Не работают методы в классе с контейнером map
#include &lt;map&gt; #include &lt;iostream&gt; #include &lt;string&gt; class Superclass { map&lt;long,long&gt;...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru