Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我遇到了这段代码,不知道它做了什么。你能破译它吗?
typedef std::map<std::string, bool (Foo::*)()> x_t;
我不明白的部分是地图的价值。我很惊讶它有效的 c++ 语法。
谢谢。
bool (Foo::*)()是指向Foo不带参数并返回的成员函数的指针bool。所以x_t可能用于将成员函数的名称映射到实际成员。
bool (Foo::*)()
Foo
bool
x_t
x_t是map从 a到返回string成员函数的指针。Foobool
map
string
您可以向后阅读 C++ 声明,或者在某些情况下,从里到外阅读。*映射的值是从返回的Foo成员函数中读取的,bool映射的键显然是 a string,并且x_t是从键到值的映射的类型别名。
*