ошибка ссылки статической переменной

Я написание кода C ++ на Mac. Почему я получаю эту ошибку при компиляции?:

Неопределенные символы для архитектуры i386: "Log :: theString", ссылка на: Log :: method (std :: string) в libTest.a (Log.o) ld: не найдены символы для архитектуры i386 clang: error: сбой команды компоновщика с код выхода 1 (используйте -v, чтобы увидеть вызов)

Не уверен, что мой код неправильный, или мне нужно добавить дополнительные флаги в Xcode. Мои текущие конфигурации XCode являются конфигурациями по умолчанию для проекта «статической библиотеки».

Мой код:

Log.h ------------

#include <iostream>
#include <string>

using namespace std;

class Log{
public:
    static void method(string arg);
private:
    static string theString ;
};

Log.cpp ----

#include "Log.h"
#include <ostream>

void Log::method(string arg){
    theString = "hola";
    cout   << theString << endl; 
}

Я вызываю «метод» из тестового кода, этим способом: 'Log :: method ("asd"):'

спасибо за вашу помощь.

63
задан subzero 14 February 2012 в 18:42
поделиться