W C++, mogę statycznie zainicjować tablicę, np .:Czy istnieje sposób na statyczną inicjalizację dynamicznie przydzielanej tablicy w C++?
int a[] = { 1, 2, 3 };
Czy istnieje prosty sposób zainicjować dynamicznie przydzielonego tablicy do zestawu natychmiastowych wartości?
int *p = new int[3];
p = { 1, 2, 3 }; // syntax error
... Czy muszę koniecznie skopiować te wartości ręcznie?
Co się sprzeciwia? Konieczność napisania kodu inicjującego wektor? Czas potrzebny na skopiowanie? Należy zauważyć, że wszelkie oszustwa kompilatora do zainicjowania dynamicznie przydzielonej tablicy wymagałyby tego samego kopiowania, ponieważ nie można zagwarantować, że przydzielona pamięć ma dokładnie taką samą zawartość. –
Jeśli wydajność jest najważniejsza, dlaczego w ogóle dynamicznie alokujesz? Po co przekierowywać wskaźnik? Ponieważ i tak "statycznie inicjujecie" macierz, z pewnością wymiary macierzy są znane w czasie kompilacji? – fredoverflow
Nie mam nic przeciwko, tylko pytam. Używam własnej klasy macierzy, która przechowuje dane w dynamicznie przydzielanej tablicy i pomyślałem, że to miłe, jeśli mogę zainicjować tę tablicę bez ręcznego kopiowania danych. :) – neuviemeporte