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

Передача двумерного массива в функцию по ссылке - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Заголовочные файлы http://www.cyberforum.ru/cpp-beginners/thread790234.html
Подскажите, во время компоновки, в итоге, "присоединяются" к экзешнику все функции/объекты и тдп. которые указаны в заголовочном файле, или лишь те, которые мы использовали в своей программе? Т.е....
C++ Графический Рисунок(нужно составить рисунок на С++ в форме желтой звезды) нужно составить рисунок на С++ в форме желтой звезды http://www.cyberforum.ru/cpp-beginners/thread790210.html
C++ С++ вывести значение формулы
#include <iostream> #include <cmath> #include <iomanip> using namespace std; int main() { float xn, xk, n, y, x, dx; const int a=2; setlocale(LC_ALL,"Russian");
C++ Непонятный вызов Деструкторов при создании списка
Непонятный вызов Деструкторов при создании списка. #include <iostream> #include <list> #include <vector> #include <string> using namespace std; class AAA {
C++ Error 1 error C2447: '{' : missing function header (old-style formal list?) и почему не работает ? и подскажите как пользоваться wcout http://www.cyberforum.ru/cpp-beginners/thread790192.html
Всем привет я начинаю обучаться программированию и сегодня столкнулся с такой проблемой Error 1 error C2447: '{' : missing function header (old-style formal list?) и почему не работает ? и подскажите...
C++ Функция , Указатели , С++ , Задачка (среднее арифметическое все введенных чисел) задание было : создать функцию , которая вводит с клавиатуры последовательность целых чисел и после ввода последнего числа выводит на печать в главной функции среднее арифметическое все введенных... подробнее

Показать сообщение отдельно
rangerx
1933 / 1542 / 141
Регистрация: 31.05.2009
Сообщений: 2,913
20.02.2013, 02:14
devdemobuster, лучше(если уж вы не используете std::vector) было бы сделать обёртки в виде структур и передавать по ссылке их, а не голые указатели, например
C++
1
2
3
4
5
6
7
8
9
10
11
12
struct ArrayOfDouble
{
    double* data;
    size_t length;
};
 
struct ArrayOfDouble2D
{
    double** data;
    size_t rowLength;
    size_t colLength;
};
C++
1
2
3
//...
void arrayOfDouble2DCreate(ArrayOfDouble2D& arr, size_t rowLen, size_t colLen);
void arrayOfDouble2DFree(ArrayOfDouble2D& arr);
Цитата Сообщение от devdemobuster Посмотреть сообщение
C++
1
2
3
pp = new double* [arr_len1];
* * for (int i = 0; i < arr_len1; ++i)
* * * * pp[i] = new double [arr_len2];
Подобные конструкции, это всегда потенциальная утечка. Если на одном из шагов цикла будет выброшен bad_alloс, то вся память, которая была выделена ранее не освободится. Подобные вещи необходимо учитывать.
Цитата Сообщение от unit7 Посмотреть сообщение
C++
1
2
3
4
5
6
void init(double **&arr, int lenA, int lenB) {
* * arr = new double*[lenA];
* * for (int i = 0; i < lenB; ++i) {
* * * * arr[i] = new double[lenB];
* * }
}
Наверное, всё-таки i < lenA, а не i < lenB?
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru