c++ - What does (1U << X) do? -
मुझे यह कोड मिला:
enum {isDynamic = (1U & lt; & lt ; 0), // ... इसाशेलेबल = (1 यू एंड एलटी; & lt; 1), // ... आईसस्ट्रॉंग = (1 यू एंड एलटी; & lt; 2) // ...};
(1 यू एंड एलटी; & lt; X)
क्या करता है?
यह बिटमैस्क सेट करता है:
1U & lt; & lt; 0 = 1 1 यू & lt; & lt; 1 = 2 1 यू & lt; & lt; 2 = 4 आदि ...
क्या होता है 1U (अहस्ताक्षरित मूल्य 1) को एक्स बिट्स द्वारा बाईं ओर स्थानांतरित किया जाता है।
आपके द्वारा पोस्ट किए गए कोड के बराबर है :
<पूर्व> enum {isDynamic = 1U, // बाइनरी: 0000000000000000000000000000000001 IsSharable = 2U, // बाइनरी: 0000000000000000000000000000000010 IsStrong = 4U // बाइनरी: 0000000000000000000000000000000100}
Comments
Post a Comment