2013-08-18 7 views
6

मैंने अपने कोड में जीएलएम लाइब्रेरी का उपयोग करना शुरू कर दिया है। बहुत अच्छा लगता है लेकिन मैं इस तरह की चीजें नहीं कर सकता:जीएलएम कन्स्ट्रक्टर सभी स्पष्ट क्यों हैं?

void foo (const glm :: vec3 & arg); 

foo ({x, y, z}); 

क्योंकि निर्माता सभी स्पष्ट हैं।

यह मेरे बाहर नरक को परेशान करना शुरू कर रहा है। मैं इस तरह के साधारण मूल्य प्रकारों के अंतर्निहित निर्माण को प्रतिबंधित करने के एक अच्छे कारण के बारे में नहीं सोच सकता। क्या लेखकों ने कुछ अप्रासंगिक सिद्धांतों का अंधाधुंध पालन किया है या क्या वे कुछ जानते हैं जो मैं नहीं करता?

+1

'foo (glm :: vec3 (x, y, z)) या ... के बारे में कैसे हो सकता है ... शायद यह वाक्यविन्यास यही कारण है कि वे एक और अधिक स्पष्ट वाक्यविन्यास नहीं बनाते हैं (??) – mr5

+1

आप क्यों पूछ रहे हैं पुस्तकालय के निर्माता के बजाय * हम *? –

उत्तर

1

नवीनतम संस्करण में उन्होंने सी ++ 11 जोड़ा है; README

https://github.com/g-truc/glm

में 0.9.5.0 के परिवर्तन देख सकते हैं और कम से जी truc

http://glm.g-truc.net/

मैं सिर्फ अपनी परियोजना में गिरा दिया और सब कुछ ठीक हो रहा है इसे डाउनलोड। प्रारंभकर्ता सूची एक स्वागत जोड़ा है।

इसके अलावा, मैं इस बात से सहमत हूं कि :: चारों ओर की जगहों को डालने से मेरे दिमाग के लिए कम से कम हस्ताक्षर थोड़ा मुश्किल हो जाता है।

संबंधित मुद्दे