C++对class类里函数的调用

这是题目中给出的类函数


class Object {
public:
    Object(int i) {
        id = i;
        count++;
        cout<<"Object "<<id<<" is created, we've got "<<count<<" object(s) now!"<<endl;
    }
    ~Object() {
        count--;
        cout<<"Object "<<id<<" is deleted, we've got "<<count<<" object(s) now!"<<endl;
    }
private:
    int id;
    static int count;
};

下面是我编写的函数部分,其它部分的代码我就不放上来了

extern void TestObjects(int num){
    for(int i=1;i<=num;++i){
        Object::Object(i);
    }
    for(int j=1;j<=num;++j){
        if(j%2==1){
            Object::~Object(j);
        }
    }
}

我想知道我这样调用Object函数和~Object函数有什么问题吗?它一直在这里报错

Object::Object()是构造函数,Object::~Object()是析构函数,这两个函数由编译器自动调用,不必手动调用。

 void TestObjects(int num)
 {
     for (int i = 1;i <= num; i++) {
         Object obj(i); // 编译器自动调用构造函数和析构函数
     }
 }