У меня есть класс, который имеет группу целых чисел, скажем
foo()
{
int a;
int b;
int c;
int d;
....
string s;
}
Теперь возникает вопрос о наилучшей читаемости, функции init() для foo(), если она выглядит как
void init()
{
a=b=c=d=1; //for some reason they are init to 1;
s = "abc";
}
или
void init()
{
a=1;
b=1;
c=1;
d=1;
s = "abc";
}
?
Причиной для строки в классе является намек на другие группы одинаковых типов, которые могут присутствовать и, конечно, класс может увеличиваться по мере изменения требований
EDIT: прежде чем этот вопрос зайдет слишком далеко, намерение этого вопроса было простым: В Эффективном элементе С++ 12 (предпочитайте инициализацию присвоения в конструкторах), Скотт использует назначение цепочки вместо a = c; B = C; Я уверен, что он знает, когда использовать что, но я также помнил, что книги, которые я читал, также рекомендовали использовать int a; int b; который в аналогичном случае назначений. В моей программе у меня аналогичная ситуация, когда группа связанных отдельных типов встроенных типов должна быть инициализирована, и я обнаружил, что создание цепочки присваивания делает ее более удобной для чтения, особенно если у класса есть много других переменных экземпляров экземпляров. Кажется, это противоречит книгам, которые я читал, и моей памяти, следовательно, вопрос.