LiFan
2024-11-13 feccef8c2b99af30b6937c42568f2fb7c82dbae2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#pragma once
#include "jobject.hpp"
template<class Ty>
class JPtr :
    public JObject
{
public:
    JPtr(Ty* impl) :impl(impl) {}
    ~JPtr() {
        ((JObject*)impl)->Release();
    }
public:
    Ty* operator ->() {
        return impl;
    }
public:
    void Release() {}
private:
    Ty* impl;
};