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

Выделение-освобождение памяти - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Namespaces. Кто создавал свои собственные? Почему-то не работает в VS10 http://www.cyberforum.ru/cpp-beginners/thread783824.html
Привет всем. Столкнулся тут с какой-то непонятной ситуацией - в книжке (Steven Prata) описано создание namespace'ов, которые почему-то в VS10 напрочь отказываются функционировать. Есть...
C++ Использование строк в макросах С++ Доброго времени суток всем! Возникла небольшая проблема - не могу понять, возможно ли сделать нечто подобное, и, если возможно, то как. Есть макрос, объявляющий функцию: #define... http://www.cyberforum.ru/cpp-beginners/thread783817.html
Квадратное уравнение C++
Прога работает, но неправильно считает корни, что не так??? #include <stdio.h> #pragma hdrstop #include <math.h> #include <conio.h>...
Геометрическая задача (Найти стороны треугольника) C++
Треугольник задан величинами своих углов и радиусом описанной окружности. Найти стороны треугольника. Помогите пожалуйста!
C++ Литература С++ http://www.cyberforum.ru/cpp-beginners/thread783790.html
Всем привет ! Нужен список литературы поочередный , с чего начать не зная никакие языки и тд. , можно и видео самоучителей . Желательно с упражнениями , потомучто скоко литературы пересмотрел ничего...
C++ Рекурсия. Составьте программу, которая для заданного натурального числа n вычисляет значение выражения Составьте программу, которая для заданного натурального числа n вычисляет значение выражения: 1/1+1/2+1/3+1/4+1/...n-1+1\n подробнее

Показать сообщение отдельно
vua72
415 / 415 / 85
Регистрация: 28.11.2010
Сообщений: 1,183
Завершенные тесты: 1
11.02.2013, 15:25
Компилятор вообще-то ругается на то, что не-void функция не возвращает значение, вернее не из всех if возвращает.

Добавлено через 8 минут
посмотрите здесь

Добавлено через 8 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
template<typename T>
T** equation(T d) {
    if (d > 0) {
        double** x = new double*[2];
        for (int i = 0; i < 2; i++) {
            x[i] = new double[1];
            x[i][0] = i + 1;
        }
        return x;
    }
    else if (d == 0) {
        double** x = new double*[2];
        x[0] = new double[1];
        x[0][0] = 1;
        x[1] = NULL;
        return x;
    }
    else
        {
            double** x =NULL;
            return x;
        }
}
но правильней так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
template<typename T>
T** equation(T d) {
    T ** x = NULL;
    if (d > 0) {
        x = new T*[2];
        for (int i = 0; i < 2; i++) {
            x[i] = new T[1];
            x[i][0] = i + 1;
        }
    }
    if (d == 0) {
        x = new T*[2];
        x[0] = new T[1];
        x[0][0] = 1;
        x[1] = NULL;
    }
    return x;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru