Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > typedef


Автор: UnixBeginner 31.1.2006, 12:13
Есть такое:
file1.h
Код

...
    public:
        ...
        ...        
        typedef std::map< unsigned long, char *, std::less< int > > datastruct;
        
        datastruct *func();
...

file1.cpp
Код

datastruct *func()
{
...
}

Почему в *.cpp не видно типа datastruct. Нормально ли это?

Автор: azesmcar 31.1.2006, 12:23
Как это не видно? а как обращаешся?
надо так...
Код

#ifndef __FILE1_H__
#define __FILE1_H__

#include <map>

class my_class
{
public:
   typedef std::map<int, int> my_type;
};

#endif


Код

#include "File1.h"

int main()
{
   my_class::my_type t;
   return 0;
}


ты же typedef внутри класса сделал...

Автор: UnixBeginner 31.1.2006, 12:30
Sorry, сглупил.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)