В Matlab синтаксис для добавления элементов в матрицеРеализовать Matlab Синтаксис в C++
A = [12 62 93 -8 22; 16 2 87 43 91; -4 17 -72 95 6]
A =
12 62 93 -8 22
16 2 87 43 91
-4 17 -72 95 6
Я строю небольшой матричную библиотеку для образовательных целей в C++, лучший способ, который я смог придумать с целью создания массива и использования инициализации списка, но он не будет работать для моих целей.
Мне нужно знать, сколько строк содержит столбцы, чтобы сначала инициализировать матрицу.
Есть ли способ скопировать этот синтаксис в C++. Я хотел бы, чтобы пользователь мог создать матрицу с помощью удобного метода, а не создавать матрицу и проходить через каждый элемент, добавить значение.
Я могу обработать = с помощью перегрузки оператора, но что я делаю с правой стороны. Как я могу работать с [] или; , Мне не нужны двоеточия или скобки. Любой другой синтаксис будет работать, если это удобно для пользователя.
Я понимаю, что будет слишком много, чтобы попросить вас его реализовать. Все, что я хочу, это эвристический подход к тому, как это сделать, или ссылку с соответствующей информацией.
-Спасибо
Эскиз: Если у вас все в порядке с матрицами с динамическим размером, вы можете использовать оператор запятой, перегруженный в значение кота/векторы/матрицы по столбцам, а оператор трубы перегружен до значения cat/векторов/матриц по строке и использует семантику перемещения для сокращения ваших копий. Имея это в виду, вам все равно понадобятся ваши собственные типы, иначе бы странные вещи произошли ... так что вам все равно придется следовать вышеизложенным ^. Или вы можете сделать то, что [Eigen] (http://eigen.tuxfamily.org/dox/classEigen_1_1DenseBase.html#ade5d2e09de50c2ca145037f295542b16) делает .... –
@ RollenD'Souza спасибо. – nnrales