xj qian
2024-09-06 762f78e520a2dafaf914973b1e230889c00d2f42
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;
};