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

Ошибка компиляции как положительный результат - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ кое-что про const http://www.cyberforum.ru/cpp/thread635197.html
решил обновить свои знания про const и везде вижу что const это константа инициализировать нужно при объявлении.....ну это мы и так знаем а еще такое "константная переменная" это типа "Небесная тверь" или "под сенью солнца" меня интересует когда она инициализируется на этапе компиляции или при исполнении вот так ведь правильно const int d=5; int n; т.е размер массива известен до...
C++ exception : 0xC0000005: Access Violation Разработка идет по windows mobile 6. Возникла необходимость в определенном случае менять данные в памяти по адресу 0x02020000 cо смещение 0x4a. Написал в лоб: int offset = 0x4a; int Addr = 0x02020000; Addr += offset; char * c = (char *) Addr; *c = 0x1; Выдает исключение: exception : 0xC0000005: Access Violation. Нет доступа к памяти. Попытался сделать через ReadProccessMemory и... http://www.cyberforum.ru/cpp/thread632008.html
C++ Можно ли написать такую программу
Здравствуйте! Мне нужна программа, которая содержала бы в себе всего два поля, при заполнении которых, содержимое этих полей сохранялось в файл на сервере (сайте например). Так же, нужно чтобы программа содержала кнопку "Отправить", для передачи содержимого полей на сервер и сообщение о удачной отправке. Можно ли написать такую программу на С++?
Очень долгое освобождение динамически выделенной памяти C++
Все никак не могу разобраться с одной проблеммой! У меня есть отображение, в котором хранятся указатели на абстрактный класс Node typedef map <int num ,Node*> NodeCont;. //Абстрактный класс узла class Node { public: virtual ~Node()=0; //// ....
C++ utf-8 <-> int32 http://www.cyberforum.ru/cpp/thread625681.html
Есть строка s формата utf-8 длины l и число n типа int32 или uint32, которое является уникальным идентификатором строки s. Какие существуют алгоритмы или готовые библиотеки для нахождения s, зная n и нахождения n, зная s. И какое будет максимально возможное значение l?
C++ Бесплатные тесты по С++ на Brainbench На http://www.brainbench.com бесплатно доступен тест по С++. Тест не сложный, думаю, многим будет интересно попробовать свои силы и узнать слабые места. Вроде как подобные тесты иногда даже "засчитываются" работодателями, так что прохождение может иметь практический смысл. подробнее

Показать сообщение отдельно
Виктор_Сен
33 / 26 / 1
Регистрация: 01.08.2011
Сообщений: 176
21.03.2015, 12:59     Ошибка компиляции как положительный результат
Автору вопроса это скорее всего уже не актуально. Но может кому-нибудь пригодится. Не могу утверждать, что достаточно хорошо разбираюсь в метафункциях, и что это решает вопрос, но мне интересно узнать мнение экспертов. Недавно столкнулся с такой проблемой. Нужно определить, существует ли шаблон с определёнными параметрами. То есть если записать шаблон с определёнными параметрами, корректна ли эта запись с точки зрения компилятора. И мне после долгих мучений удалось разрешить эту задачу. Я использовал следующие статьи с хабра:http://habrahabr.ru/post/205772/ http://habrahabr.ru/post/54762/ http://habrahabr.ru/post/206458/. Проверял в VS 2012, кстати, он не поддерживает "constexpr", но у меня всё нормально работало со "static const". Минимально возможный код по объёму для метафункции проверки корректности шаблона, который мне удалось получить:
C++
1
2
3
4
5
6
7
8
9
        template<typename T> struct _type_is_correct
        {
        private:
            static bool test_func(T t);
            static void test_func(...);
        public:
            static const bool value=
                std::is_same<bool,decltype(test_func(std::declval<T>()))>::value;
        };
Далее, это можно использовать как-то так:
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
template<typename T, typename E=void> class SomeClass;
template<typename T> class SomeClass<T,typename std::enable_if<std::is_integral<T>::value>::type>
{
 
};
 
int main()
{
    if (_type_is_correct<SomeClass<int>>::value)
    {
        std::cout<<"SomeClass<int> is correct"<<std::endl;
    } 
    else
    {
        std::cout<<"SomeClass<int> is not correct"<<std::endl;
    }
 
    if (_type_is_correct<SomeClass<float>>::value)
    {
        std::cout<<"SomeClass<float> is correct"<<std::endl;
    } 
    else
    {
        std::cout<<"SomeClass<float> is not correct"<<std::endl;
    }
 
    system("pause");
    return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru