С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
Падаван С++
447 / 261 / 89
Регистрация: 11.11.2014
Сообщений: 916
1

Конструкторы

15.01.2018, 13:25. Показов 954. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем доброго дня, хотел спросить почему вот такая штука происходит

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
template<typename First> class Test {
 
    private:
        First var;
 
    public:
 
    Test(){
 
    }
 
    template<typename Second>
    Test(const Test<Second>& obj) {
        //...
        std::cout << "Test";
    }
 
};
 
 
int main(int argc, char* argv[]) {
 
    Test<int> a;
    Test<double> b(a);
 
 
    Test<int> a2;
    Test<int> b2(a2);
 
 
    return 0;
}
т.е при параметре шаблона double вызывается написанный нами конструктор копирования, а при int нет
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.01.2018, 13:25
Ответы с готовыми решениями:

конструкторы
Есть 2 проблемы: 1) Сказали сделать 2 конструктора: один по умолчанию, а другой-с параметрами....

конструкторы
Доброе время суток! Помогите разобраться с конструктором. Что это такое и с чем его едят. Так как...

Конструкторы
Пытаюсь разработайте класс представления окна на экране компьютера. В состав должны войти следующие...

Конструкторы
class A { public: A() : a(10) // инициализация a { b = 3; // присвоение b } int a,...

3
3257 / 2059 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
15.01.2018, 13:34 2
Лучший ответ Сообщение было отмечено obivan как решение

Решение

Если типы разные — это уже не конструктор копирования.
В данном случае конструктор копирования генерируется и принимает объект типа инстанцированного класса.
1
Падаван С++
447 / 261 / 89
Регистрация: 11.11.2014
Сообщений: 916
15.01.2018, 13:35  [ТС] 3
0x10, А понял, спасибо, не знал про такое поведение
0
277 / 226 / 93
Регистрация: 27.06.2016
Сообщений: 639
15.01.2018, 13:36 4
obivan, конструктор копирования по определению не шаблонный.
http://en.cppreference.com/w/c... onstructor
1
15.01.2018, 13:36
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.01.2018, 13:36
Помогаю со студенческими работами здесь

Конструкторы
Объясните на пальцах, для чего нужны конструкторы?

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

Конструкторы С++
Здравствуйте. Помогите вместо функций void get и void set написать конструктор и дестркутор к ним....

Конструкторы
У меня есть два конструктора: первый по умолчанию Circle() //Конструктор по умолчанию...


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

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