- बनाम क्या तेज है?
स्विच बयान लगभग 30 case
रों होता मैं निम्नलिखित कर सकता है 30.सी ++ समारोह संकेत स्विच
0 से enumarated अहस्ताक्षरित ints से मिलकर,:
class myType
{
FunctionEnum func;
string argv[123];
int someOtherValue;
};
// In another file:
myType current;
// Iterate through a vector containing lots of myTypes
// ... for (i=0; i < myVecSize; i ++)
switch (current.func)
{
case 1:
//...
break;
// ........
case 30:
// blah
break;
}
और func
के साथ स्विच गर्त जाना हर बार। स्विच के बारे में अच्छी बात यह भी होगी कि मेरा कोड 30 कार्यों के मुकाबले अधिक व्यवस्थित है।
या मुझे लगता है कि (ताकि के साथ यकीन नहीं) कर सकता है:
class myType
{
myReturnType (*func)(int all, int of, int my, int args);
string argv[123];
int someOtherValue;
};
मैं 30 विभिन्न कार्यों तो होगा, शुरुआत में उनमें से एक के लिए एक सूचक MyType को सौंपा गया है।
- शायद तेज़ क्या है: स्विच स्टेटमेंट या फ़ंक्शन पॉइंटर? प्रति सेकंड
कॉल: लगभग 10 लाख। मैं इसका परीक्षण नहीं कर सकता - मुझे पूरी चीज को फिर से लिखने की आवश्यकता होगी। वर्तमान में स्विच का उपयोग कर। हर घड़ी चक्र मायने रखता है -
मैं एक दुभाषिया जो मैं तेजी से होने के लिए अजगर & रूबी से चाहते हैं का निर्माण कर रहा हूँ!
क्या आपका मतलब है 'myReturnType (* func)(); '? – kennytm
@ केनीटीएम: भूल गए, हाँ। – Rawr