即使在实例化对象C ++

时间:2016-01-04 20:29:44

标签: c++ class object struct compilation

目前是C ++的新手,将其作为编程课程的一部分进行学习。

据我所知,C ++中的结构和类之间的区别在于,默认情况下,类成员是私有的,而struct成员是公共的。

我想亲自尝试一下,并在CodeBlocks中编写了一个小程序:

Main.cpp的

#include <iostream>
#include "TestStruct.h"

using namespace std;

int main()
{
    TestStruct ts();
    ts.print();
    return 0;
}

StructTest.h

#ifndef TESTSTRUCT_H
#define TESTSTRUCT_H

#include <iostream>

struct TestStruct
{
    TestStruct(){}
    virtual ~TestStruct(){}
    void print();
};

#endif // TESTSTRUCT_H

实施文件:

#include "TestStruct.h"

TestStruct::TestStruct()
{
    //ctor
}

TestStruct::~TestStruct()
{
    //dtor
}

void TestStruct::print()
{
    std::cout << "Testing" << std::endl;
}

但是,我收到编译时错误: error - request for member 'print' in 'ts', which is of non-class type 'TestStruct()'

我错过了一些完全明显的东西吗?我认为可以使用与类完全相同的结构。

0 个答案:

没有答案