C++ C++;如何为类的所有成员调用方法?

C++ C++;如何为类的所有成员调用方法?,c++,class,C++,Class,我有一个班会有很多成员,我想 为该类的所有成员调用方法,而不是 只是一个单独的成员 我可以通过链表链接类的所有成员,但有更好的方法吗?最好的方法是,如果元素(您称之为类成员)在一个数组中,那么您可以像这样遍历所有元素 我想你想要类似的东西 #include <algorithm> #include<vector> class A {}; void doSomething(A member) {} int main() { std::vector<A>

我有一个班会有很多成员,我想 为该类的所有成员调用方法,而不是 只是一个单独的成员


我可以通过链表链接类的所有成员,但有更好的方法吗?

最好的方法是,如果元素(您称之为类成员)在一个数组中,那么您可以像这样遍历所有元素 我想你想要类似的东西

#include <algorithm>
#include<vector>
class A {};

void doSomething(A member) {}
int main() {
    std::vector<A> Amemebers;
    std::for_each(Amemebers.begin(), Amemebers.end(), doSomething);
}
#包括
#包括
A类{};
无效(成员){}
int main(){
std::矢量放大器;
std::for_each(Amemebers.begin()、Amemebers.end()、doSomething);
}

C++不支持简单的反射。这意味着您无法获取类的成员列表。可能有外部库和工具,但在标准C++中不能这样做。
所以你的要求是不可能的。您需要做的是将成员变量存储在某种容器中,如
std::vector

请显示您想要做什么。该方法的功能是什么?我不太理解您的问题,但链表几乎永远都不是答案。您需要一个数组(或向量),不是类。也许你的成员应该是向量的元素,而不是类的成员?我认为OP意味着一个类方法,就像在每个单独调用它的对象中一样,但这也应该起作用。你的想法非常有用。我一直在海上,因此耽搁了。对于我的应用程序,一个类成员数组就是答案,因为成员不需要动态分配,但是如果成员需要动态分配,向量就是答案