Здравствуйте, Videoman, Вы писали:
V>Т.е. вот так написать можно:
V>V>void FuncA();
V>void FuncB()
V>{
V>return FuncA();
V>}
V>
V>а вот так нельзя:
V>V>class A
V>{
V>//...
V>};
V>void FuncB()
V>{
V>return A();
V>}
V>
Это понятно. Но я думал, что void как раз и означает что функция не возвращает СОВСЕМ НИКАКОГО значения. Это не так? Раз это не так, то отличается ли организация вызова конструктора от вызова обычных функций, например таких:
int f(int x) { return x*x; }
void g() { return; }
Я имею ввиду является ли трансляция C++ вызова конструктора в ассемблерный код каким-то специальным частным случаем, который обрабатывается способом отличным от способа, которым транслируются вышеприведенные функции int f(int) и void g(), например?