|
|
|
Помогите чайнику! Как создать массив классов?
|
|||
|---|---|---|---|
|
#18+
Как из экземпляров потом функции вытаскивать? Компилятор пишет, что такой объект не является классом: ни (.), ни (->) не помогают. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2007, 22:59 |
|
||
|
Помогите чайнику! Как создать массив классов?
|
|||
|---|---|---|---|
|
#18+
код в студию в смысле тот, на который компилятор ругается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2007, 23:12 |
|
||
|
Помогите чайнику! Как создать массив классов?
|
|||
|---|---|---|---|
|
#18+
Определение класса в заголовочном файле: class TREE_ELEMENT { public: TREE_ELEMENT (); void setAll( int, int, int, int, int); .......... int number; int isa; int isat; int partof; int partoft; }; Инициализация: TREE_ELEMENT::TREE_ELEMENT {} void TREE_ELEMENT::setAll(int Wnumber = 0, int Wisa = 0, int Wpartof = 0, int Wisat = 0, int Wpartoft =0) { this.number = Wnumber; this.isa = Wisa; this.isat = Wisat; this.partof = Wpartof; this.partoft = Wpartoft; } Создание экземпляра: te[temp_name] = new TREE_ELEMENT(); te[temp_name].setAll(temp_name, isa_name, pof_name, isat_name, poft_name); Все переменые int Ошибки: C:\Program Files\Microsoft Visual Studio\MyProjects\result\filewr.cpp(141) : error C2679: binary '=' : no operator defined which takes a right-hand operand of type 'class TREE_ELEMENT *' (or there is no acceptable conversion) tree.cpp C:\Program Files\Microsoft Visual Studio\MyProjects\result\tree.cpp(10) : fatal error C1001: INTERNAL COMPILER ERROR (compiler file 'msc1.cpp', line 1786) Please choose the Technical Support command on the Visual C++ Help menu, or open the Technical Support help file for more information Error executing cl.exe. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.05.2007, 23:24 |
|
||
|
Помогите чайнику! Как создать массив классов?
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2007, 06:49 |
|
||
|
Помогите чайнику! Как создать массив классов?
|
|||
|---|---|---|---|
|
#18+
Cry wolf Создание экземпляра: te[temp_name] = new TREE_ELEMENT(); te[temp_name].setAll(temp_name, isa_name, pof_name, isat_name, poft_name); Все переменые int Ошибки: C:\Program Files\Microsoft Visual Studio\MyProjects\result\filewr.cpp(141) : error C2679: binary '=' : no operator defined which takes a right-hand operand of type 'class TREE_ELEMENT *' (or there is no acceptable conversion) tree.cpp C:\Program Files\Microsoft Visual Studio\MyProjects\result\tree.cpp(10) : fatal error C1001: INTERNAL COMPILER ERROR (compiler file 'msc1.cpp', line 1786) Please choose the Technical Support command on the Visual C++ Help menu, or open the Technical Support help file for more information Error executing cl.exe. Объяви Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2007, 09:40 |
|
||
|
Помогите чайнику! Как создать массив классов?
|
|||
|---|---|---|---|
|
#18+
Или делая также, но убер new ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2007, 09:41 |
|
||
|
Помогите чайнику! Как создать массив классов?
|
|||
|---|---|---|---|
|
#18+
Во-первых, класс - это тип. В С++ нельзя иметь массив классов. Можно иметь массив объектов данного класса. Во-вторых, следует различать сам объект и указатель на него. Ты никак объявляешь массив объектов. Что-то типа Код: plaintext 1. Код: plaintext 1. Если пока можешь, используй массив объектов, а не массив указателей, ибо это проще. Далее, оформляй код в форуме тегом SRC, ибо читать неудобно. Как только заработает, сделай из функции Код: plaintext 1. Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2007, 10:38 |
|
||
|
Помогите чайнику! Как создать массив классов?
|
|||
|---|---|---|---|
|
#18+
Cry wolf пишет: > Как из экземпляров потом функции вытаскивать? Компилятор пишет, что > такой объект не является классом: ни (.), ни (->) не помогают. Вообще, вроде бы массив классов можно создать только если они POD-structure. Не путаю ? Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2007, 10:48 |
|
||
|
Помогите чайнику! Как создать массив классов?
|
|||
|---|---|---|---|
|
#18+
MasterZiv Cry wolf пишет: > Как из экземпляров потом функции вытаскивать? Компилятор пишет, что > такой объект не является классом: ни (.), ни (->) не помогают. Вообще, вроде бы массив классов можно создать только если они POD-structure. Не путаю ? Posted via ActualForum NNTP Server 1.4 Да, нет. Это никак не связано. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2007, 11:14 |
|
||
|
Помогите чайнику! Как создать массив классов?
|
|||
|---|---|---|---|
|
#18+
MasterZiv: Вообще, вроде бы массив классов можно создать только если они POD-structure. Не путаю ? да не, лишь бы конструктор по умолчанию был доступен условие POD нужно для инциализации агрегатом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2007, 13:08 |
|
||
|
Помогите чайнику! Как создать массив классов?
|
|||
|---|---|---|---|
|
#18+
Голенков ВладимирMasterZiv: Вообще, вроде бы массив классов можно создать только если они POD-structure. Не путаю ? да не, лишь бы конструктор по умолчанию был доступен условие POD нужно для инциализации агрегатом И даже это необязательно (в смысле, конструктора по умолчанию может и не быть), если использовать для инициализации массива агрегатную инициализацию, в которой можно использовать любой доступный конструктор: Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2007, 19:09 |
|
||
|
Помогите чайнику! Как создать массив классов?
|
|||
|---|---|---|---|
|
#18+
Анатолий Широков: И даже это необязательно (в смысле, конструктора по умолчанию может и не быть), если использовать для инициализации массива агрегатную инициализацию, в которой можно использовать любой доступный конструктор ага, вполне работает, только требует доступного конструктора копирования правда в результате оптимизации его все равно не использует (g++ (GCC) 3.2.3) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.05.2007, 19:44 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=34524471&tid=2028881]: |
0ms |
get settings: |
6ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
77ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
31ms |
get tp. blocked users: |
1ms |
| others: | 246ms |
| total: | 388ms |

| 0 / 0 |
