Re[9]: Почему нельзя писать void ctor();
От: CRT  
Дата: 26.04.17 08:17
Оценка:
Здравствуйте, rg45, Вы писали:


R>А такой синтаксис:

R>
R>int obj = 1024;
R>

R>не вызывает затруднений?

это воспринимается как совмещение двух операций в одной строке
int obj;
obj = 1024;

выглядит как такой удобный способ сокращенной записи одной строкой: объявил и тут же присвоил.

Когда человек видит "=" он первым делом, и это естественно, думает что здесь срабатывает оператор присвоения.
Поэтому это не очевидно — то есть непонятно на первый взгляд — в таком синтаксисе, что
A obj=A(1024);

равно
A obj(1024);
Отредактировано 26.04.2017 8:24 CRT . Предыдущая версия . Еще …
Отредактировано 26.04.2017 8:24 CRT . Предыдущая версия .
Отредактировано 26.04.2017 8:21 CRT . Предыдущая версия .
Отредактировано 26.04.2017 8:20 CRT . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.