Назначение двумерного двойного массива с использованием одномерного массива строк, каждая из которых ссылается на другой одномерный массив двойных чисел

0

У меня есть 4 массива размера 3. В моем коде я генерирую некоторые значения, которые я помещал в эти массивы. Я хотел бы сохранить их в выходном файле.

Какая самая элегантная и лучшая практика для такой реализации? Я использую двойной массив для их хранения и цикл for, чтобы пройти через 2D-массив и сохранить их, но мне не нравится этот метод.

Мне нравится помещать все arr1, arr2, arr3, arr4 в один массив строк и циклически перебирать массив, получая строку, которая ссылается на двойной массив, который имеет три значения. Надеюсь, я не ошибся. Это то, что я сделал...

double arr1[3], arr2[3], arr3[3], arr4[3];

//Omitted code that generates content of arrays

double coordinates[4][3] = {{arr1[0], arr1[1], arr1[2]},
                            {arr2[0], arr2[1], arr2[2]},
                            {arr3[0], arr3[1], arr3[2]},
                            {arr4[0], arr4[1], arr4[2]}};

for(int i = 0; i<4; i++)
    {
        for(int j = 0; j<3; j++)
        {
        output << coordinates[i][j]; //writing ith character of array in the file
        if(j<2)
            output<<",";//separate coordinates by a comma
        else 
            output<<"\n";
    }
}

Кроме того, как насчет векторов в таком случае? Я никогда их не использовал, поэтому я не знаком с ними. Спасибо.

  • 0
    result1 определения result1 и т. д.
  • 0
    Была опечатка. Как насчет сейчас?
Показать ещё 2 комментария
Теги:
arrays
vector

1 ответ

0

std::array - предпочтительная конструкция. Вот как вы можете его использовать:

#include <iostream>
#include <array>
int main()
{
    std::array<int, 3> arr1, arr2, arr3, arr4;
    std::array<std::array<int, 3>, 4> coordinates{{arr1, arr2, arr3, arr4}};
}
  • 0
    Хорошо, но я использую Xcode и у меня нет этого заголовка. XCode не имеет большой поддержки C ++ 11. так что вы думаете?
  • 0
    @Salchem double coordinates[4][3] = {arr1, arr2, arr3, arr4}
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню