这是什么用法(关于c++类的声明),谁能解释一下啊?
下面代码中带波浪线的到底是什么意思?请各位指点
-------------------------------
#ifndef _Handle_V3d_Viewer_HeaderFile
#define _Handle_V3d_Viewer_HeaderFile
//此处删去一些代码。。。。。。
class Standard_Transient;
class Handle_Standard_Type;
class Handle(Viewer_Viewer);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
class V3d_Viewer;
Standard_EXPORT Handle_Standard_Type& STANDARD_TYPE(V3d_Viewer);
class Handle(V3d_Viewer) : public Handle(Viewer_Viewer) {
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
public:
void* operator new(size_t,void* anAddress)
{
return anAddress;
}
void* operator new(size_t size)
{
return Standard::Allocate(size);
}
void operator delete(void *anAddress)
{
if (anAddress) Standard::Free((Standard_Address&)anAddress);
}
Handle(V3d_Viewer)():Handle(Viewer_Viewer)() {}
Handle(V3d_Viewer)(const Handle(V3d_Viewer)& aHandle) : Handle(Viewer_Viewer)(aHandle)
{
}
Handle(V3d_Viewer)(const V3d_Viewer* anItem) : Handle(Viewer_Viewer)((Viewer_Viewer *)anItem)
{
}
Handle(V3d_Viewer)& operator=(const Handle(V3d_Viewer)& aHandle)
{
Assign(aHandle.Access());
return *this;
}
Handle(V3d_Viewer)& operator=(const V3d_Viewer* anItem)
{
Assign((Standard_Transient *)anItem);
return *this;
}
V3d_Viewer* operator->()
{
return (V3d_Viewer *)ControlAccess();
}
V3d_Viewer* operator->() const
{
return (V3d_Viewer *)ControlAccess();
}
Standard_EXPORT ~Handle(V3d_Viewer)();
Standard_EXPORT static const Handle(V3d_Viewer) DownCast(const Handle(Standard_Transient)& AnObject);
};
#endif
...全文
相关推荐
c++ 类的声明和定义
c++类的声明和定义是在学习c++中开始会遇到的问题,希望有所帮助!
c++类声明和成员函数分离写法
c++将类成员函数实现与类的声明分离的写法,实现了学生类的分离写法
C++ .h和.cpp文件总结
总结了.h文件能做什么,.cpp文件能做什么,总结了.h文件的本质,方便新手在遇到文件包含、类型声明、变量定义时能理清.h与.cpp关系,纯属个人总结文档。
C++类变量声明
C++类变量声明,验证与java类声明不同的Demo
c++的类.h文件.cpp以及main文件关系
代码包包含一个完整的c++程序,从一个类的.h文件定义,到类的实体文件 .cpp,再到主文件main的构成 --- 基于翁恺的视频 04 自动售票机例子


