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

[дизайн и эволюция] провалы в variadic конструкторы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вывести 10 самых длинных (по числу символов) предложений http://www.cyberforum.ru/cpp/thread1637394.html
Ребят программисты помогите, понимаю что программа легкая. Но не могу сделать. Текст надо считать из файла.
C++ Найти причины и способы устранения ошибки Во время откладки указатель на число выдает мусор типо -81791524 #include <stdlib.h> #include <time.h> #include <iostream> #include <conio.h> #include <cctype> using::std::cin; using::std::cout; using::std::endl; http://www.cyberforum.ru/cpp/thread1637383.html
Как лучше всего пробежать все элементы контейнера? C++
Речь о следующем. Есть vector. Я хочу пробежать все его элементы, но походу я буду проверять удовлетворяют они определенному условию или нет. Если да, то этот элемент удаляется. Как это лучше всего реализовать?
C++ Найти сумму ряда
Ребят, голову ломаю и никак не осилю. В чем смысл вообще? Я понять формулу даже не могу, не то что уж код написать здесь. Какие-то "-...+". Что это вообще? Помогите кто чем может.
C++ Вычислить произведение отрицательных элементов массива http://www.cyberforum.ru/cpp/thread1637347.html
Приветствую вас дорогие форумчане. Прошу о помощи в изменении программы. В коде предоставленном ниже требуется заменить: рандомный подбор чисел на вводимый. Зарание спасибо! (Текст задания: В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1.) произведение отрицательных элементов массива; 2.) сумму положительных элементов массива, расположенных до максимального элемента....
C++ Реализовать структуру "Student" Создайте программу для ввода и вывода фамилий и оценок студентов. Введите не менее 10 студентов. Отберите студентов, у которых вторая и четвертая оценка 2 подробнее

Показать сообщение отдельно
tapochka
38 / 38 / 8
Регистрация: 25.04.2014
Сообщений: 483
02.08.2016, 01:33     [дизайн и эволюция] провалы в variadic конструкторы
hoggy, я тут помозговал... вот вполне юзабельное решение , правда допиливать надо, ибо я так и не смог устранить проблему с конструктором копии:
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
#include <boost/mpl/if.hpp>
#include <boost/mpl/vector.hpp>
#include <boost/mpl/find.hpp>
 
namespace variadic {
 
struct plasma {
    template<typename...Arg,
             typename = typename std::enable_if<
                            boost::mpl::find<
                                        typename boost::mpl::vector<std::decay<Arg>...>,
                                        plasma
                                            >::type::pos::value
                                        == boost::mpl::size<
                                                    typename boost::mpl::vector<Arg...>
                                                            >::type::value
                                      >::type*
             >
    plasma(Arg&&...args) {
        std::cout<<"variadic construct\n";
    }
    plasma() { std::cout<<"construct\n"; }
    plasma(const plasma& rhs) { std::cout<<"copy construct\n"; }
    plasma(plasma&& rhs) { std::cout<<"move construct\n"; }
};
 
}
 
int main() {
variadic::plasma pls("dfa",2,3.);
        const variadic::plasma plss = std::move(pls);  //если убрать const то не вызывается конструктор копии
        variadic::plasma plsss = plss;
        variadic::plasma plssss;
}
 
Текущее время: 03:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru