- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
template<class T>
class E{};
struct T
{
operator E<T>&()
{static E<T> a; return a;}
operator const E<T>&() const
{static E<T> a; return a;}
T(E<T>&){}
T(){}
private:
T(T&);
};
int main() {
T a;
T b((T()));
//T c((a));//Если расскомментировать эту строчку, то не скомпилируется, тк T(T&); в private.
return 0;
}