У меня есть простой объект, который содержит некоторые [публичные] данные.
Я хочу, чтобы мой интерфейс был чистым, поэтому я не хочу предварительно / постфиксировать что-либо для имен общедоступных переменных или имен аргументов моей функции.
Тем не менее, я закончил тем, что делал что-то вроде этого:
template<typename T> struct Foo
{
explicit Foo(T x) : x(x) // This [i.e., x(x)] seems to be doing the "Right Thing", but is this well defined?
{/* ^
No pre-/post- fixing.
*/
}
T x; // No pre-/post- fixing.
};
Просто повторюсь: все, что я спрашиваю, это хорошо ли определенное поведение. Не должен ли я это делать или не делать ...
Спасибо.