http://topic.csdn.net/t/20060114/11/4516360.html
struct内数据默认是public类型的,
class内数据默认是private类型的。
继续用struct是为了向下兼容啊,习惯问题,以后发展会只用class的
你可以
template <class T>
但是
template <struct T>
并不总是可以用的。
class中有个默认的this指针,struct没有
不同点:构造函数,析构函数 this 指针
error:struct仅仅能定义数据,而CLASS可以定义操作!
class exp
{
int x;
int y;
};
int main()
{
class exp a(1,2);
cout < < a.x < < a.y;
}
应该可以吧
细微区别:
struct也可以作为C语言中单纯的结构体用,如果里面一个函数都没有的话。而class则无论如何也是个类。考虑如下例子:
struct exp
{
int x;
int y;
};
int main()
{
struct exp a={1,2};
cout < < a.x < < a.y;
}
这个是成立的,输出12
而
class exp
{
int x;
int y;
};
int main()
{
class exp a={1,2};
cout < < a.x < < a.y;
}
则不成立了。这个区别很细微。
基本上就这些区别了。