今天,我了解了C++"memberspace"的成语,这大致滥用C++,使得的性质T::bar以及T.bar工作,当T既是一个类型,在某些范围内的对象.
struct A {
struct Controls {
/* put some typedefs/data/functions here */
} Controls;
};
// Can be used as a type and value
A a;
A::Controls::iterator it = a.Controls.begin();
Run Code Online (Sandbox Code Playgroud)
你有没有在练习中使用过这个成语?你觉得它有用吗?这个成语有什么好的或最好的应用?
不,我从未使用过这种技术(我认为它不应该被称为"成语"):
由于我没有使用它,我发现它没有用.
这种技术的一个很好的应用可能是混淆其他程序员.
另一个应用程序可能是写一篇技术喋喋不休的文章,说明它对于一些想象中的实际遇到过的问题有多精彩,或许有很多模板元编程模糊不清?
Dunno,最好的应用程序可能是写一篇关于所有那些愚蠢规则的文章struct,就像我在同一范围内你也可以有一个同名的函数,我记得,并指出那些可以完成的任何事情,远离语言的黑暗角落可以做得更好.:-)文章在金钱方面支付不多,但是他们付出了代价并且写作很有趣.请写(TIA).
干杯&hth.,