2010-11-19 16 views
13

मुझे एक सी ++ कक्षा के शीर्षलेख फ़ाइल में वेक्टर घोषणाओं के साथ कुछ परेशानी हो रही है। मेरा पूरा हेडर फाइल इस तरह दिखता है: "निजी" घोषणा (जहां मैं अपने वैक्टर घोषित) निम्नलिखित लाइनों परसी ++ हेडर फ़ाइल में वेक्टर घोषित करना

#ifndef PERSON_H 
#define PERSON_H 

#include "Message.h" 
#include <string> 
#include <vector> 


class Person { 

public: 

Person() {}; 
Person(std::string emailAddress); 

private: 

vector<Message> inbox; 
vector<std::string> contacts; 
std::string emailAddress; 

}; 

#endif PERSON_H 

मेरे त्रुटि तब होती है। मुझे जो त्रुटि मिल रही है वह है C4430 - अनुपलब्ध प्रकार विनिर्देशक और सी 2238 - अप्रत्याशित टोकन ';' से पहले

किसी भी मदद के लिए धन्यवाद।

+1

जवाब पहले से ही पाया गया है और समस्या याद आ रही थी प्रोग्रामर लापरवाही के कारण था। प्रतिक्रिया के लिए धन्यवाद और इस साइट पर इस तरह के एक मूर्ख सवाल पोस्ट करने के लिए खेद है। –

+0

क्या आप प्यार नहीं करते हैं कि संकलक त्रुटि कितनी बेकार है, सी/सी ++ के 5 साल बाद यह लगभग दूसरी प्रकृति बन गई है, लेकिन थोड़ी देर बाद जावा का उपयोग करके यह केवल हमला करता है कि कंपाइलर एरो कितना बेकार है। – hhafez

+0

मुझे नहीं लगता कि यह मूर्ख था। मैं सी ++ के लिए काफी नया हूं और मैं भी वही गलती कर रहा था, इसलिए यह वही था जो मुझे चाहिए! – jamesc1101

उत्तर

16

आप नाम स्थान छूट रहा है:

std::vector 
+0

Arg, मुझे ऐसा डंसे लगता है। मुझे यह इंगित करने के लिए धन्यवाद कि इस तरह के मूर्ख सवाल के साथ साइट को छेड़छाड़ करने के लिए मुझे हर किसी के लिए खेद है। –

+4

यहां कई प्रश्नों की तुलना में, यह * वह * मूर्ख नहीं था :) आपको नेमस्पेस std का उपयोग न करने के लिए अतिरिक्त अंक प्राप्त होते हैं; ':) –

+0

हां, मैं इसे ले जाऊंगा। : पी मैंने आपको पहले जवाब देने के बाद हरे रंग की जांच दी होगी। –

9

आपको 'वेक्टर' से पहले 'std ::' रखना होगा जैसा आपने स्ट्रिंग के साथ किया था।

+0

आह, ज़ाहिर है। गह, अब मैं बहुत मूर्ख महसूस करता हूँ। सहायता के लिए धन्यवाद! –

0

मेरे मामले में, जोड़ने नाम स्थान से काम नहीं किया, फिर भी, मैं

#include <vector>; 
+3

'# शामिल करें ' (कोई अर्धविराम नहीं) – William

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