私はこの書籍をC++でデータ構造とアルゴリズムを読んでいます。第4版Adam Drozdekによって次のコードが発生しました。私の質問はコロンがunsigned int successor : 1;
で何をするのかです。 コロンがsuccessor
を1ビットだけ取ると答えた。しかし、私は変数がアドレス可能でなければならないので、ブール変数はバイトの倍数を取ることを知っています。 successor
が1ビットしか必要ない場合は、どのようにアドレス可能にすることができますか?次のC++コードでコロンとは何ですか?
template<class T>
class ThreadedNode {
public:
ThreadedNode() {
left = right = 0;
}
ThreadedNode(const T& e, ThreadedNode *l = 0, ThreadedNode *r = 0) {
el = e; left = l; right = r; successor = 0;
}
T el;
ThreadedNode *left, *right;
unsigned int successor : 1;
};
誰かが何をしているのか分かりません。この場所のビットフィールドは全く役に立たない。 – SergeyA