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

CRT>Здравствуйте, rg45, Вы писали:


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

R>>
R>>int obj = 1024;
R>>

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

CRT>а это не выглядит как вызов метода конструктора.


A если так?
int obj = int(1024);


CRT>это воспринимается как совмещение двух операций

CRT>
CRT>int obj;
CRT>obj = 1024;
CRT>


Что тебе мешает и в случае с пользовательским типом думать об этом как о совмещении двух операций?
A obj;
obj = A(1024);


Ты же не упускай из виду, что синтаксис спользования типов, определенных пользователем, целенаправленно делали похожим на синтаксис использования встроенных типов — чтобы максимально способствовать обобщенному программированию. Это позволяет, например, совершенно безболезненно для пользователя использовать в качестве итератора вектора как специальные классы, содержащие отладочную информацию, так и сырые указатели.
--
Справедливость выше закона. А человечность выше справедливости.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.