История изменений
Исправление Kroz, (текущая версия) :
Не это ли тебе нужно?
$ сat test.cpp
#include <iostream>
#include <iomanip>
struct Data
{
const int a;
const int b;
};
int main()
{
Data d1{a:1, b:2};
std::cout << "A=" << d1.a << ", B=" << d1.b << std::endl;
Data d2{a:2};
std::cout << "A=" << d2.a << ", B=" << d2.b << std::endl;
return 0;
}
[s]kroz@lix:~/tmp/delem> g++ -Wextra -std=c++1z ./test.cpp -o test && ./test
./test.cpp: In function ‘int main()’:
./test.cpp:17:14: warning: missing initializer for member ‘Data::b’ [-Wmissing-field-initializers]
Data d2{a:2};
^
A=1, B=2
A=2, B=0
Нюансы:
- всё равно нужно параметры ставить в нужном порядке.
- по идее gcc-specific
Но это не существенно для твоей задачи, так?
Исправление Kroz, :
Не это ли тебе нужно?
$ сat test.cpp
#include <iostream>
#include <iomanip>
struct Data
{
const int a;
const int b;
};
int main()
{
Data d1{a:1, b:2};
std::cout << "A=" << d1.a << ", B=" << d1.b << std::endl;
Data d2{a:2};
std::cout << "A=" << d2.a << ", B=" << d2.b << std::endl;
return 0;
}
[s]kroz@lix:~/tmp/delem> g++ -Wextra -std=c++1z ./test.cpp -o test && ./test
./test.cpp: In function ‘int main()’:
./test.cpp:17:14: warning: missing initializer for member ‘Data::b’ [-Wmissing-field-initializers]
Data d2{a:2};
^
A=1, B=2
A=2, B=0
Нюансы: - всё равно нужно параметры ставить в нужном порядке. - по идее gcc-specific Но это не существенно для твоей задачи, так?
Исходная версия Kroz, :
Не это ли тебе нужно?
$ сat test.cpp
#include <iostream>
#include <iomanip>
struct Data
{
const int a;
const int b;
};
int main()
{
Data d1{a:1, b:2};
std::cout << "A=" << d1.a << ", B=" << d1.b << std::endl;
Data d2{a:2};
std::cout << "A=" << d2.a << ", B=" << d2.b << std::endl;
return 0;
}
[s]kroz@lix:~/tmp/delem> g++ -Wextra -std=c++1z ./test.cpp -o test && ./test
./test.cpp: In function ‘int main()’:
./test.cpp:17:14: warning: missing initializer for member ‘Data::b’ [-Wmissing-field-initializers]
Data d2{a:2};
^
A=1, B=2
A=2, B=0
Нюанс - всё равно нужно параметры ставить в нужном порядке. Но это не существенно для твоей задачи, так?