C++中的结构体除了可以拥有成员变量(用a.x的方式访问)之外,还可以 拥有成员函数(用a.add(1,2)的方式访问)。
下面是一个例子:
#include<iostream> using namespace std; struct Point { int x, y; Point(int x=0, int y=0):x(x),y(y) {} }; Point operator + (const Point& A, const Point& B) { return Point(A.x+B.x, A.y+B.y); } ostream& operator << (ostream &out, const Point& p) { out << "(" << p.x << "," << p.y << ")"; return out; } int main() { Point a, b(1,2); a.x = 3; cout << a+b << "\n"; return 0; }
相信很好理解