Im 초보자를 C++로 작성. 나는이 나에게이 같은 오류 준 네임 스페이스를 생성네임 스페이스에서 C++ 표준 벡터 초기화
namespace nsHttpWorker{
std::vector<string> nvMobileAgents = {
"Mozilla/5.0 (Linux; U; Android 4.0.3; ko-kr; LG-L160L Build/IML74K) AppleWebkit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30",
"Mozilla/5.0 (Linux; U; Android 4.0.3; de-ch; HTC Sensation Build/IML74K) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30",
"Mozilla/5.0 (Linux; U; Android 2.3; en-us) AppleWebKit/999+ (KHTML, like Gecko) Safari/999.9",
"Mozilla/5.0 (Linux; U; Android 2.3.5; zh-cn; HTC_IncredibleS_S710e Build/GRJ90) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1",
"Mozilla/5.0 (Linux; U; Android 2.3.5; en-us; HTC Vision Build/GRI40) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1",
"Mozilla/5.0 (Linux; U; Android 2.3.4; fr-fr; HTC Desire Build/GRJ22) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1",
"Mozilla/5.0 (Linux; U; Android 2.3.4; en-us; T-Mobile myTouch 3G Slide Build/GRI40) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1",
"Mozilla/5.0 (iPhone; U; CPU iPhone OS 5_1_1 like Mac OS X; en) AppleWebKit/534.46.0 (KHTML, like Gecko) CriOS/19.0.1084.60 Mobile/9B206 Safari/7534.48.3",
"Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A543 Safari/419.3",
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/7046A194A",
"Mozilla/5.0 (iPad; CPU OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A5355d Safari/8536.25",
"Mozilla/5.0 (iPod touch; CPU iPhone OS 8_3 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) FxiOS/1.0 Mobile/12F69 Safari/600.1.4",
"Mozilla/5.0 (iPhone; CPU iPhone OS 8_3 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) FxiOS/1.0 Mobile/12F69 Safari/600.1.4",
"Mozilla/5.0 (iPad; CPU iPhone OS 8_3 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) FxiOS/1.0 Mobile/12F69 Safari/600.1.4"
};
}
변수 네임 스페이스와 같이 std::vector
std::string
의 객체를 초기화하려고 :
worker.obj:-1: ошибка: LNK2005: "class std::vector<class std::basic_string<char,
struct std::char_traits<char>,class std::allocator<char> >,
class std::allocator<class std::basic_string<char,
struct std::char_traits<char>,class std::allocator<char> > > > nsFacebookHttp::nvMobileAgents"
([email protected]@@[email protected][email protected]?
[email protected]@[email protected]@[email protected]@[email protected]@[email protected]@[email protected][email protected]?
[email protected]@[email protected]@[email protected]@[email protected]@[email protected]@@[email protected]@[email protected]@A)
already defined in mainwindow.obj
그래서 C에서 컨테이너 initalisations을 할 수 없습니다를 ++ 네임 스페이스?
먼저 간단한 방법을 시도해보십시오. 'int' 줄을 만드십시오. – juanchopanza
@juanchopanza 나는이 같은'std :: vector ls = {1,2,3,4};'을 네임 스페이스 변수로 시도했는데 다음 오류가 발생했습니다 :'facebookworker.obj : -1 : ошибка : LNK2005 : "class std :: vector > nsFacebookHttp :: ls "(? ls @ nsFacebookHttp @@ 3V? $ vector @HV? $ allocator @ H @ std @@@ std @@ A) mainwindow.obj' –
Vlad
먼저 간단한 것을 시도해보십시오.'int' 줄을 만드십시오. int의 벡터가 아닙니다. 단지'int'. – juanchopanza