我是 C++ 的新手,不理解这种结构。
InterceptionKeyStroke &kstroke = * (InterceptionKeyStroke *) &stroke
我知道 & = 指针。但是,这是什么意思?
* (InterceptionKeyStroke *)
最佳答案
分解它:
InterceptionKeyStroke // a type...
& // ...which is by reference
kstroke // named 'kstroke'
= // bound to (since references are bound)
* // something that a pointer points to
(InterceptionKeyStroke*) // "I know what the type is!" cast
& // address of...
stroke // ...variable named 'stroke'
所以
*(InterceptionKeyStroke*)
正在转换为一个指针,然后取消引用该指针。关于c++ - 在 C++ 中,这个结构是什么意思 "InterceptionKeyStroke &kstroke = * (InterceptionKeyStroke *) &stroke"?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49464597/