2012-07-12 19 views
10

के शीर्षलेख कहां हैं, मुझे आश्चर्य है कि मेरे फाइल सिस्टम पर मुझे सी ++ मानक पुस्तकालय के शीर्षलेख मिलते हैं। विशेष रूप से मैं वेक्टर टेम्पलेट की परिभाषा की तलाश में हूं। मैंने/usr/include/और विभिन्न उपनिर्देशिकाओं में खोज की। मैंने 'vector.h का पता लगाने' की भी कोशिश की जो वैक्टरों के कई कार्यान्वयन लाए, लेकिन मानक नहीं। मैं क्या खो रहा हूँ? (वितरण Gentoo है)सी ++ मानक पुस्तकालय

पृष्ठभूमि: क्या आंतरिक रूप से होता है मैं एक पुस्तकालय वेक्टर के समय के सबसे अधिक और gprof से अधिक दोहराता से पता चलता है कि उस समय के सबसे

std::vector<int, std::allocator<int> >::_M_insert_aux(
    __gnu_cxx::__normal_iterator<int*, std::vector< 
     int, std::allocator<int> > >, int const&) 

में खर्च किया जाता है की रूपरेखा कर रहा हूँ शायद यह है एक std :: वेक्टर :: push_back पर, लेकिन मुझे यकीन नहीं है।

+2

आप *** सी *** में 'वेक्टर' की खोज क्यों कर रहे हैं? – genpfault

उत्तर

19

जीसीसी आम तौर पर मानक सी ++ हेडर में स्थापित है /usr/include/c++/<version>/। आप किस संस्करण को स्थापित कर चुके हैं, यह जानने के लिए आप gcc -v चला सकते हैं।

कम से कम मेरे संस्करण में, vector.h नहीं है; सार्वजनिक हेडर सिर्फ vector (बिना विस्तार के) है, और अधिकांश कार्यान्वयन bits/stl_vector.h में है।

यह मेरे उबंटू वितरण पर मामला है; आपका वितरण भिन्न हो सकता है।

+1

धन्यवाद, गायब। एच आवश्यक संकेत है। Gentoo पर यह /usr/lib64/gcc/x86_64-pc-linux-gnu/4.5.3/include/g++-v4/vector में है – Thomas

0

कई आईडीई में (जैसे NetBeans) तुम मेरे डेबियन स्थिर प्रणाली vector पर परिभाषा

1

पर जाने के लिए className को Ctrl+Click उपयोग कर सकते हैं यहाँ है:

/usr/include/c++/4.4/vector 
+0

क्या यह vector.h है? कौन सा पैकेज इसे प्रदान करता है? जीसीसी? – Thomas

8

g++ -v -v -v चल रहा है जिसमें कई सारी चीज़ें शामिल हैं, जिनमें सभी निर्देशिका शामिल हैं। vector उनमें से एक में है।

1

एक "सादे" Ubuntu पर स्थापित आप

"libstdC++ (संस्करण) -dev" स्थापित

हेडर फाइल प्राप्त करने के लिए किया है।

तब स्थापित फ़ाइलों को चकित करते हुए आपको पथ मिल जाएगा!

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