आप कर सकते हैं, लेकिन आप इसे static
और const
घोषित करने के लिए है:
struct Timer {
static const auto start = 0;
};
A working example in Coliru।
इस सीमा के साथ, इसलिए आपके पास start
गैर-स्थिर सदस्य के रूप में नहीं हो सकता है, और विभिन्न वस्तुओं में अलग-अलग मान नहीं हो सकते हैं।
आप विभिन्न वस्तुओं के लिए start
के विभिन्न प्रकार चाहते हैं, बेहतर
template<typename T>
struct Timer {
T start;
};
आप T
के प्रकार निकालना चाहते हैं, आप एक कारखाने की तरह समारोह है कि कर सकते हैं एक टेम्पलेट के रूप में अपने वर्ग है कटौती टाइप करें।
template<typename T>
Timer<typename std::decay<T>::type> MakeTimer(T&& startVal) { // Forwards the parameter
return Timer<typename std::decay<T>::type>{std::forward<T>(startVal)};
}
Live example।
स्रोत
2013-08-13 02:33:34
अपने प्रकार –
बाहर आंकड़ा है कि नहीं है क्या टेम्पलेट्स के लिए कर रहे हैं? – user1520427
आप कब पता लगाते हैं कि यह किस प्रकार का होगा? संकलन समय या रन टाइम? क्या आप हमें कुछ संदर्भ दे सकते हैं? तुम क्या करने की कोशिश कर रहे हो? – Homer6