有人能解釋一下下面的程序如何成爲infinte循環 「AabAabAab ..」C++運算符重載構造
#include "stdafx.h"
#include <iostream>
using namespace std;
class Base {
public:
Base(int j=1):i(j)
{cout<<"B";}
private:
int i;
};
class Case{
public:
Case(int j=1):i(j) {cout<<"A";}
operator Base() { cout<<"ab"; return *(new Case); }
private:
int i;
};
int main()
{
Base obj = Case();
return 0;
}
它在vC++編輯器上運行良好。 – RDX
哇。這將是一個很好的面試問題 – AlexK