Lapulya:
> Ну тут я и не спорю
у меня сомнения по поводу этого
>
> > inline A make_A(int a, int b)
> {
> A temp = {a, b};
> return temp;
> }
>
> SomeClass::SomeClass():
> a(make_A(0, 10))
> {
> }
>
Компилятор вполне может в данном случае обойтись без создания временного объекта. Даже без встраивания функции make_A. Это называется NRVO (Named Return Value Optimization). Специально для поддержания этого и аналогичных случаев в стандарте есть указание что конструктор копирования может не быть вызван.
Posted via RSDN NNTP Server 1.9 gamma
Легче одурачить людей, чем убедить их в том, что они одурачены. — Марк Твен