Я сталкиваюсь с нечетной ошибкой сегментации, которая происходит где-то, и мне было интересно, может ли это быть связано с тем, как я выделил матричный массив указателей.Выделение массива указателей
Он объявлен как таковы в файле .h:
int **matrix;
Но когда я прохожу его, я использую его таким образом междунар * матрица [], чтобы доступ отдельных строки с матрицей [ i] (это значительно облегчило мои задачи).
Так что, когда я выделить матрицу, я должен был сделать:
matrix = new int * [vertices];
for (int i = 0; i < vertices; i++)
matrix[i] = new int[vertices];
Или в третьей строке, следует использовать оператор ->:
matrix[i]-> new int[vertices]; // Or something like this.
А что такое разница между ними?
Можете ли вы разместить больше кода, как функция, которая получает матричный аргумент? И, возможно, опубликуйте небольшой, компилируемый пример. –
Один компилируется, а другой нет? – 0x499602D2
Файл огромен, это только его части, которые я волнуюсь, может быть причиной ошибки. @ 0x499602D2 хорошо, да, следовательно, комментарий рядом с ним ... – Ashley