Вопросы по теме 'aggregate-initialization'

Вырезание скобок в инициализации std :: array
Предположим, нужно инициализировать std::array . Ничего страшного, если использовать двойные фигурные скобки: std::array<int, 2> x = {{0, 1}}; std::array<int, 2> x{{0, 1}}; Также можно использовать одиночные фигурные скобки в...
6563 просмотров

Есть ли разница между struct Data d = {0} и struct Data d = {}
В моем коде есть два типа инициализации структурных переменных. Пример #include<iostream> #include<string> using namespace std; struct Data{ int arr[5]; float x; }; int main(){ struct Data d = {0}; struct Data d1 = {};...
233 просмотров

Как сделать вложенный агрегатный инициализатор?
У меня есть код, как показано ниже struct A {int i; int j;} int main() { array<A, 2> a; a = {{1,2},{3,4}}; //compilation error: not take a right-hand operand of //type 'initializer list' (or no acceptable...
268 просмотров
schedule 07.07.2022

Агрегатная инициализация структуры с использованием ее собственных элементов данных
Это n-й вопрос по этому поводу, но я не смог найти точный дубликат... Предположим, следующий код: #include <iostream> struct S { int x; int y; }; class C { public: S s; C() : s{123, s.x} {} }; int main() {...
232 просмотров
schedule 01.01.2023

GCC не поддерживает исключение фигурных скобок в новом выражении
Рассмотрим эту программу: struct S { int m; }; int main() { S s_arr[1]{0}; S *s_new = new S[1]{0}; int i_arr[1][1]{0}; int (*i_new)[1] = new int[1][1]{0}; return 0; } Я думаю, что все четыре переменные в основной...
81 просмотров