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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Посоветуйте отличную книжку для новичка по изучению С++ http://www.cyberforum.ru/cpp-beginners/thread349144.html
Посоветуйте отличную книжку для новичка по изучению С++,который вообще не знаком с языком...
C++ Дерево поиска Дано дерево поиска, ключи которого – целые числа (положительные и отрицательные). Определить К-е «–»-е число, следующее за «+»-м числом при прямом просмотре дерева (TLR). У меня программа похоже... http://www.cyberforum.ru/cpp-beginners/thread349135.html
C++ Как корректно вручную ввести данные
Как реализовать ручной ввод в данной программе? (Задание: вставить заданный пользователем элемент Е до и после элемента с минимальным ключом в заданном пользователем односвязном списке.) #include...
C++ Вывод заданных чисел
Для вывода цифр 1,2,3 в различных комбинациях дана программа #include<iostream> #include<stdlib.h> using namespace std; int main () {setlocale(LC_ALL,"Rus"); for(int i=1;i<4;i++) for(int...
C++ Отсутствие совместимости. http://www.cyberforum.ru/cpp-beginners/thread349131.html
Дилема такова,что я не могу заметить ошибки именно в ходе решения(быть может со скобками переборщил),а точнее нахождения y1 и y2.Ответы должны быть аналогичными,заранее извиняюсь за отсутствие...
C++ С++ массив объектов Люди начался новый учебный год опять обращаюсь за помощью File Имя файла.размер. количество обращений. создать массив объектов.ввывести. создать список файлов .размер которых превышает заданный.... подробнее

Показать сообщение отдельно
Wolf6969
0 / 0 / 0
Регистрация: 07.09.2011
Сообщений: 15
08.09.2011, 00:45  [ТС]
Я вьехал!!! Спасибо за подробное обьяснение. Без последней фразы не понял бы) Еще раз благодарен.

Добавлено через 21 минуту
К сожалению не все так гладко. При попытке проверить корректность выделения возникла новая трабла.

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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#include <iostream>
#include  <conio.h>
#include <windows.h>
 
using std::cout;
using std::cin;
 
class Table{
    int size;
    int **table;
public:
    Table(int size){
        table = new int* [size];
        for (int i = 0; i < size; i++){
            table[i] = new int [size];
        }
 
        for (int i = 0; i < size; ++i){
            for (int j = 0; j < size; ++j){
                table[i][j]=rand()%10+1;
            }
        }
    }
 
    Table(const Table &t0){
         table = new int* [t0.size];   //выделение памяти для матрицы
         for (int i = 0; i < t0.size; i++){
             table[i] = new int [t0.size];
         }
 
         for (int i = 0; i < t0.size; ++i){
             for (int j = 0; j < t0.size; ++j){
                  table[i][j] = t0.table[i][j];
             }
         }
    }
 
    ~Table(){
        for (int i = 0; i < size; i++){
            delete[] table[i];                 //удаляем массивы int*-ов
        }
        delete[] table;                       //удаляем массив int**-ов
    }
    int detA();
 
    void showtable(){
        for (int i = 0; i < size; ++i){
            for (int j = 0; j < size; ++j){
                cout << table[i][j] << " ";
            }
            cout << "\n"
        }
    }
 
};
 
 
int main(int argc, char *argv[]){
    Table t1(5);
    t1.showtable();
    cout << "Done";
    getch();
return 0;
}
в итоге вижу в консоли только done
Отладка показывает, что в этом месте
C++
1
2
3
4
5
  for (int i = 0; i < size; ++i){
            for (int j = 0; j < size; ++j){
                table[i][j]=rand()%10+1;
            }
        }
с элементами массива -члена класса ничего не происходит, там просто адреса.
тоесть не работает ;(

Добавлено через 39 минут
Ошибку нашел, испарвил.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.