结构对象声明

时间:2011-05-02 14:14:17

标签: c++ structure

你好我每个人都做了一个结构,我想制作它的2个对象。我正在使用qtcreator。

我写

struct grapharray gao ;(grapharray是我的结构)

每个thig都运行良好,但是当我写另一个像

这样的对象时
struct grapharray  gao ;
struct grapharray  gao1 ;

我的程序意外完成任何人都可以告诉我它为什么会这样,我应该在哪里声明结构对象

struct grapharray
{
int structcol;
double  *structpayloadgraph;

double  *structsessiongraph;

};

这是我的结构;

我有一个功能

    struct grapharray graphplotdata(char * filename)
{ // computing some values and returning structure object
}

感谢

1 个答案:

答案 0 :(得分:0)

如果我理解这个问题,我会说你使用了太多的“struct”关键字。

如果将结构定义为

struct grapharray
{
    int structcol;
    double  *structpayloadgraph;
    double  *structsessiongraph;
};

然后在声明变量时不需要使用关键字“struct”。

grapharray  gao;  // without struct keyword
grapharray  gao1; // without struct keyword

,你的功能应该是

grapharray graphplotdata(char * filename) // without struct once again.
{
    // computing some values and returning structure object
}

structs的工作方式与类几乎相同;主要区别在于默认情况下结构成员和方法是“公共”的,默认情况下类成员和方法是“私有的”。


编辑:考虑到Dennis Zickefoose的评论,这不是一个好的答案。