c++ - 类和函数同名?

标签 c++ oop

我对 C++ 和 OOP 很陌生,所以我对一个方面特别感兴趣。我定义新类(class)的时刻。我给它起名字,里面没有任何功能。 但是在类之外还有类名数据类型的函数。

我想知道这个特定的例子:

class point
{
public:
    double x;
    double y;
};

point solve(line v1, line v2);

int main()
{
    point A = solve(_a, _b);
}

point solve(line v1, line v2)
{
    point a;

    a.x = 0;
    a.y = 0;

    //more code here

    return a;
}

我真的不明白一个类名如何成为一个独立的函数,该类的数据类型和函数名不同(点 solve())。它不是构造函数,也不是引用,因为它返回值。在该函数中还有另一种数据类型 Point。

有没有办法让初学者更容易理解?

最佳答案

嗯,先找一本好的C++书吧。也许是 C++ Primer。

我猜你在问

point solve(line v1, line v2)

point是返回值的类型。所以这看起来像:solve是一个接受两个参数的函数,两个参数的类型都是line , 并返回一个类型为 point 的值.

关于c++ - 类和函数同名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34208978/

相关文章:

c++ - 使用 GoogleTest 访问私有(private)成员

c++ - `%p` 对 printf 有什么用处?

C++ - 通过单个指针访问多个对象的接口(interface)

c++ - 类构造函数打印有问题

oop - 避免抽象类和继承

C# 抽象结构

C++数组问题

c++ - 在 C++ 运算符中调用析构函数以释放内存的正确方法是什么?

c++ - 原子和 std::mutex 的成本是否会影响我的多线程 RLNC 编码性能

c# - 如何在继承中授予对选择性类方法的访问权限?