++ (.. public struct private ). , , C.
, , .
( ), , . :
struct CPoint
{
int x ;
int y ;
CPoint() : x(0), y(0) {}
int getDistanceFromOrigin() const
{
return std::sqrt(x * x + y * y) ;
}
} ;
inline CPoint operator + (const CPoint & lhs, const CPoint & rhs)
{
CPoint r(lhs) ;
r.x += rhs.x ;
r.y += rhs.y ;
return r ;
}
x CPoint, - CPoint.
, , , ++ ( ) , , , .
( ), , . :
class CString
{
public :
CString(const char * p) { } ;
CString(const CString & p) { } ;
const char * getString() const { return this->m_pString ; }
size_t getSize() const { return this->m_iSize ; }
void copy { }
void concat { }
private :
size_t m_iSize ;
char * m_pString ;
} ;
inline CString operator + (const CString & lhs, const CString & rhs)
{
CString r(lhs) ;
r.concat(rhs) ;
return r ;
}
, concat ( ), . .
, , .
- .
, , , (, ).
, , , .
, , # (.. ). , .