C++的一个问题,关于结构体在类中先声明后定义出现的问题
代码如下classA{structPoint;public:A();};A::A(){Point(3,4);}structA::Point{public:intx,y;P...
代码如下
class A
{
struct Point;
public:
A();
};
A::A()
{
Point(3, 4);
}
struct A::Point
{
public:
int x, y;
Point(int a, int b)
{
x = a;
y = b;
}
~Point(){}
};
编译报错:error C2514: 'A::Point' : class has no constructors
在A中先声明了一个结构体Point,然后在后面给出定义(包含了构造函数和析构函数),为什么在A的构造函数中想构造这个结构体会说这个结构体没有构造函数呢? 展开
class A
{
struct Point;
public:
A();
};
A::A()
{
Point(3, 4);
}
struct A::Point
{
public:
int x, y;
Point(int a, int b)
{
x = a;
y = b;
}
~Point(){}
};
编译报错:error C2514: 'A::Point' : class has no constructors
在A中先声明了一个结构体Point,然后在后面给出定义(包含了构造函数和析构函数),为什么在A的构造函数中想构造这个结构体会说这个结构体没有构造函数呢? 展开
1个回答
展开全部
class A
{
struct Point;
public:
A();
};
struct A::Point
{
public:
int x, y;
Point(int a, int b)
{
x = a;
y = b;
}
~Point(){}
};
A::A()
{
Point(3, 4);
}
调换一下顺序就可以了。
{
struct Point;
public:
A();
};
struct A::Point
{
public:
int x, y;
Point(int a, int b)
{
x = a;
y = b;
}
~Point(){}
};
A::A()
{
Point(3, 4);
}
调换一下顺序就可以了。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
光点科技
2023-08-15 广告
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询