Извините,
Я играл с с ++ и сделал что-то странное, и это сработало, кто-то знает, почему это сработало.
Main.cpp
#include <iostream>
#include "c1.h"
using namespace std;
Classe c(){
Classe v();
}
int main(){
cout << c().x;
return 0;
}
c1.h
#include <iostream>
using namespace std;
class Classe{
public:
Classe(){
x = 100;;
}
int x;
};
Итак, почему я могу вызвать c (). x, если функция Classe c () {Classe v ()} не возвращает переменную?
Нет предупреждений с ибез -wall.
если я возвращаю v в функции, которую он не компилирует: сообщение об ошибке с возвратом:
main.cpp: в функции 'Classe c ()': main.cpp:8: ошибка: запрошено преобразование из Classe (*) () в нескалярный тип Classe