Tablice C++

0

Witam mam pytanie czy da się zresetować wrzystkie elementy tablicy za jednym zamachem bez zbędnego wpisywania ich po kolei?
Z góry dziękuje

0

A jeśli chcesz wyzerować tablicę możesz po prostu napisać: int array[10]{};

0
#include <iostream>
#include <array>

int main()
{
    std::size_t constexpr size{ 10 };
    std::array<int, size> arr{};
    for (auto const& el : arr)
    {
        std::cout << el << ' ';
    }
}
0

Zazwyczaj takie coś robisz z pomocą funkcji, np. ZeroMemoty, memset, itp.

int *t = new int[milion];

zatem aby to wyzerować:
ZeroMemory(t, milion*sizeof(int));

abo od razu można użyć coś w stylu:
t = allocZero(milion);

a w windows nawet tak można:
t = GlobalAlloc(GMEM_ZEROINIT, milion);

1

std::vector<> sam upora się z zerowaniem dużych dynamicznych tablic i pewnie nie będzie wolniejszy:

std::size_t constexpr million{ 1000000 };
std::vector<int> millionNums(million);
0
carlosmay napisał(a):

std::vector<> sam upora się z zerowaniem dużych dynamicznych tablic i pewnie nie będzie wolniejszy:

std::size_t constexpr million{ 1000000 };
std::vector<int> millionNums(million);

Będzie zdecydowanie wolniejszy.
Wszelkie te contenery z stl są wolniejsze od podstawowych - 'niskopoziomowych' funkcji.

1 użytkowników online, w tym zalogowanych: 0, gości: 1