类对象中的结构初始化
如何初始化类对象的结构变量?我有以下代码:类对象中的结构初始化
#include<iostream>
using namespace std;
class bitmap {
public :
bitmap() { clear() ;}
get();
set();
clear();
static const int a=10;
};
bitmap::get() {
};
struct bitmap_list {
bitmap_list_value _value;
}
int main()
{
bitmap bitmap_list_value;
bitmap_list bbbb;
bbbb. _value=bitmap_list_value.a;
cout << bbbb._value << endl;
}
这段代码正确,或者是否有可能初始化包含类对象的结构?这是我收到的错误:
>error: ‘struct error: ‘_bitmap_list_value’ does not name a type
>error:bitmap_list’ has no member named ‘_value’
不,此代码不正确。您引用的是从未声明的类型bitmap_list_value
。
基于您的评论(“bitmap_list_value是一流的位图对象”),它的声音,如果你也有这样的,但在你的问题的一些原因代码并没有包括它:
typedef bitmap bitmap_list_value;
但是的,当然,您可以在struct
s中包含班级类型的成员。 A struct
或多或少是class
,默认情况下所有字段都制作为public
,您可以像在类中一样定义structs
中的方法,依此类推。
bitmap_list_value是类位图 – user1095505 2011-12-20 11:10:28
的对象,我的问题是可以在结构中声明类对象吗? – user1095505 2011-12-20 11:12:13
是的,它可以在类/结构中声明类/结构... – mark 2011-12-20 11:35:02
什么是'bitmap_list_value'? – 2011-12-20 10:25:41
你也错过了一个;从bitmap_list声明... – mark 2011-12-20 11:33:03
也许你的意思是'struct bitmap_list {int _value;}'? – 2011-12-21 09:28:25