gpt4 book ai didi

c++ - 作为成员或非成员函数的算法?

转载 作者:行者123 更新时间:2023-11-28 07:59:31 25 4
gpt4 key购买 nike

我有一个简单的数据结构,一个由 k 索引的三角矩阵和 l , 其中l1 运行至 Nk1 运行至 l :

template<int N> class triangular_matrix {
std::vector<int> elem;
public:
int& operator()(int k, int l) {
return elem[(N * (N + 1) - l * (l + 1)) / 2 + k - 1];
}
};

我也有几种算法在这个数据结构上运行。他们都访问triangular_matrix只能通过 operator() .

使这些算法成为 triangular_matrix 的成员函数的优缺点是什么?而不是让它们成为非成员函数(在非全局命名空间中)?

最佳答案

在 C++ 中,将所有不必是成员函数的东西放在非成员函数中是很常见的。 Herb Sutter 写了一篇 nice article前一阵子。

关于c++ - 作为成员或非成员函数的算法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11873598/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com