2011-01-26 2 views
0

У меня есть класс, и в ней я хочу, чтобы создать объект другого класса ... Обычно я делаю это в заголовочном файле, я просто положить что-то вроде:C++, объект декларации в заголовочных файлах

QString RSSName;

и это работает, потому что класс имеет конструктор, который не имеет параметров ...

Так вот моя проблема: как я делаю, что для некоторого класса (скажем ErrorOutput), который имеет только конструктор с 1 или несколькими параметрами? Я не хочу, чтобы создать указатель на объект, мне нужно, чтобы это было что-то вроде этого:

ErrorOutput err("test");

Я надеюсь, что я описал вопрос правильно, это немного сонным здесь: P

Спасибо за помощь :)

+1

Вы хотите сказать, что вы объявляете свой собственный класс в файле заголовка и объявляете переменную-член? например 'class Something {QString RSSName; ...}; ' –

+0

@ Oli Charlesworth: Да, я хотел объявить переменную-член :) – xx77aBs

+1

А, вы хотите [список инициализации членов] (http://stackoverflow.com/questions/1711990/). – fredoverflow

ответ

3

Сложно сказать из вашего описания, что именно вы просите, но похоже, что «RSSName» является переменной-членом в вашем классе. Если я правильно понял, инициализируйте его в списке инициализации конструктора.

class Foo 
{ 
public: 
    Foo() : RSSName(someVal) { } 

private:  
    QString RSSName; 
} 
+0

Да, это то, что я хотел ... Печально то, что я знал об этом, но просто не мог вспомнить. Пришло время заснуть и продолжить завтра :) Спасибо! – xx77aBs