0 / 0 / 0
Регистрация: 09.10.2019
Сообщений: 3
1

Как поместить в initializer_list объекты своего класса?

09.10.2019, 21:04. Показов 1357. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
файл с main
 
#include <iostream>
#include "asd_string.h"
#include "asd_vector.h"
 
//есть свой класс вектора и строки
 
void main() {
 
    vector<asd::string> z = {ads::string(),asd::string()};
 
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
namespace asd {
 
    template<class T>
 
    public:
        //другие методы
        vector(const std::initializer_list<T>&);
    };
 
template<class T>
    vector<T>::vector(const std::initializer_list<T>& list):
    vector(list.size()){
        for (auto& element : list)massive[count++] = element;
    }
 
//другие реализации
 
};
 
//реализация остальных методов
Такая проблема, я создал класс вектора, в котором хочу поместить свои строки, когда я помещал строки от std::string, все работало, но когда я начал помещать строки от asd::string, компилятор выдавал такую ошибку, кто нибудь может объяснить проблему или показать её решение?

Ошибка C2679 бинарный "=": не найден оператор, принимающий правый операнд типа "const _Elem" (или приемлемое преобразование отсутствует)
with
[
_Elem=asd::string
] asd D:\homewrok\asd\asd_vector.h 58


на всякий случай оставлю скрин
Кликните здесь для просмотра всего текста

Как поместить в initializer_list объекты своего класса?

0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.10.2019, 21:04
Ответы с готовыми решениями:

Как правильно добавить в Set объекты своего класса?
Всем привет. Собственно меня интересует вопрос как правильно добавить в Set объекты своего класса....

Поместить в динамически расширяемый массив объекты класса, производные от базового абстрактного класса
Помогите пожалуйста новичку! (мне). Я хочу создать динамически расширяющийся массив указателей...

Как объявить массив объектов одного класса в другом классе, а затем поместить в него объекты?
Как объявить массив объектов одного класса в другом классе, а затем поместить в него объекты?

Поместить в стек объекты класса
Здравствуйте, хочу воспользоваться стандратным контейнером TObjectStack из Contnrs, но не знаю как...

1
18840 / 9839 / 2408
Регистрация: 30.01.2014
Сообщений: 17,280
09.10.2019, 21:11 2
Лучший ответ Сообщение было отмечено Makolm как решение

Решение

Makolm, у вашей "asd"-строки некорректный для таких операций оператор присваивания. Он должен принимать const-ссылку.
2
09.10.2019, 21:11
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.10.2019, 21:11
Помогаю со студенческими работами здесь

как поместить объекты на одно окно?
доброго времени суток, в данный момент пишу курсач на Qt изучаю по докам.Попробовал создать меню и...

Использование своего объекта своего класса внутри другого
Здравствуйте. Есть класс для работы с матрицами. Все работает. Теперь нужно создать другой класс,...

Как создать класс контейнер-динамический массив и поместить туда объекты других классов?
Какой тип массива использовать тип базового класса или наследников?

Создание своего Event для своего класса
как создать событие для своего класса? У C# нужно создать свое делегат, потом создать экземпляр...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

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