Как мне создать массив с динамическими размерами в C ++?

Я ищу, чтобы создать массив (или вектор?) Для представления некоторых файлов.

По сути, я собираюсь иметь переменное количество входных файлов. Каждая строка каждого файла может рассматриваться как пользовательский объект (каждый из них я называю символом). В каждом файле есть переменное количество строк.

Поэтому я хотел бы, чтобы происходило такое представление:

Массив [х] [у]

где x будет ссылаться на файл, а y на строку в этом файле.

Я видел несколько тем на стеке потока, которые предложили что-то вроде этого

symbol **snapShots = new symbol*[usableFiles];
for(int i = 0; i < usableFiles; ++i) {
snapShots[i] = new symbol[longestFile];
}

который дает мне странное сообщение об ошибке при сборке:

Undefined symbols for architecture x86_64:
"symbol::symbol()", referenced from:
_main in MarketDataGenerator.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status
Info: Parallel threads used: 3

Есть идеи, как мне поступить? Или мне лучше временно сохранить информацию в файле, прежде чем читать обратно для дальнейшей обработки?

2

Решение

Рассматривали ли вы использование std::vector<symbol> или же std::vector<std::vector<symbol> >? Линкер пытается вам сказать, что вы объявили конструктор по умолчанию для вашего класса. symbol но не определено (по крайней мере, не в файлах, на которые вы ссылаетесь).

4

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]