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

указатели и шаблоны - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Нахождение углов треугольника по трем его сторонам http://www.cyberforum.ru/cpp-beginners/thread950116.html
На данный момент у меня получается вот так.. На форуме есть подобная тема но она на языке паскаль http://www.cyberforum.ru/pascal/thread91176.html #include "stdafx.h" #include "math.h" #include <iostream> using namespace std; int main() { double a,b,c,S,u;
C++ Динамическая память(толи я дурак, то ли правда лыжи не едут) Есть код программы: #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <time.h> const int N=10;//razmer matritsi const int NPOW=N*N; const int RANDMAXIMUM=99;//maksimal'noe znachenie vivodimoe rand() http://www.cyberforum.ru/cpp-beginners/thread950105.html
Пожалуйста подскажите, что означает оператор! C++
Доброго времени суток. Перевожу Сишный исходник в Делфи и столкнулся с такой строкой v5 = **(_DWORD **)v6->h_addr_list; Подскажите пожалуйста, что она означает, а в частности что означает **(_DWORD **)v6
C++ Чтение графических файлов
Здравствуйте уважаемые участники форума. Есть задание для курсового проекта, связанная с программированием C++. Приведу небольшой пример: имеется графический файл, допустим формата jpeg, нужна такая программа, которая считает данный файл для дальнейшей обработки и последующем сохранение в какой либо свой формат. Если есть у кого возможность и знания в этой сфере, пожалуйста помогите(...
C++ Программирование циклического вычислительного процесса http://www.cyberforum.ru/cpp-beginners/thread950087.html
12. Дан набор ненулевых целых чисел; признак его завершения — число 0. Вывести сумму всех положительных четных чисел из данного набора. Если требуемые числа в наборе отсутствуют, то вывести 0. Даже представить не могу, как это можно реализовать средствами С++(вот такой вот я чайник). Хотя бы дайте алгоритм действий или натолкните на нужную мысль :)
C++ Как же все-таки лучше всего перегружать операторы? 1. Нужно ли использовать friend там, где это возможно? (или не стоит злоупотреблять где-нибудь?) 2. Стоит ли при перегрузке бинарного оператора "+" делать его обособленным от класса? // свободная ф-ия которая не friend для класса DATES // она просто использует публичный оператор operator += DATES operator + (const DATES& lhs, const DATES& rhs) { DATES result(lhs); result += rhs; //... подробнее

Показать сообщение отдельно
no0ker
100 / 87 / 4
Регистрация: 17.12.2010
Сообщений: 416
08.09.2013, 14:59  [ТС]     указатели и шаблоны
Цитата Сообщение от Olivеr Посмотреть сообщение
попробуйте так http://ideone.com/qPS3SR
красивое решение. буду делать наподобие.

Добавлено через 1 минуту
Цитата Сообщение от alsav22 Посмотреть сообщение
Как вариант:
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
#include <iostream>
using namespace std;
 
template <class T>
struct Foo
{
    void mem_f() 
    { 
        std::cout << "mem_f()\n"; 
    }
    
};
 
int flag = 0;
 
void* menu()
{
    void *p = 0;
    int n;
    cin >> n;
    if (n == 1)
    {
        Foo <int> *p = new Foo<int>;
        flag = 1;
    }
    if (n == 2)
    {
        Foo<char> *p = new Foo<char>;
        flag = 2;
    }
    return p;
}
 
int main()
{
    void *p = menu();
    if (flag == 1) {Foo <int>* pint = (Foo <int>*)p; pint ->mem_f();}
    if (flag == 2) {Foo <char>* pchar = (Foo <char>*)p; pchar ->mem_f();}
    
    return 0;
}
И вопрос: почему в самой функции menu() нельзя выполнять вызов mem_f()?
решение, конечно, рабочее. спасибо. но если вариантов много? int char double float string и прочее... куча проверок этого flag.
 
Текущее время: 03:11. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru