6 / 6 / 1
Регистрация: 17.05.2013
Сообщений: 13
1

Работа с class ами. Заполнение дин. массива типа class

18.05.2013, 15:03. Показов 949. Ответов 1
Метки нет (Все метки)

Всем доброго времени суток!
Это моя первая тема на этом сайте, поэтому если что извините меня (за неточности итд итп).

Мне нужно создать заполненный дин. массив типа class ов. Я бы хотел посмотреть на какой нибудь стандартный приёмчик,
как это сделать допустим с перегруженным конструктором(или ещё кое как), с одним экземпляром все ясно. Ниже приведен некий код,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include <iostream>
using namespace std;
struct birthday {
    unsigned day;
    unsigned month;
    unsigned year;
};
 
class Person {
public:
    char * name;
    birthday Bday;
 
    Person();
    Person(char* name,birthday Bday);
    //~Person(); 
};
Person::Person(){
    name = NULL;
    Bday.day=0;
    Bday.month=0;
    Bday.year=0;
}
Person::Person (char* aName,birthday aBday){ //Перегруженный конструктор
    unsigned len = strlen (aName);
    name = new char [len+1];
    strcpy (name,aName);
 
    Bday.day = aBday.day;
    Bday.month = aBday.month;
    Bday.year = aBday.year;
}
void main () {
    birthday  mybirthday={15.12.1994};
    Person *A = new Person ("Denis",mybirthday); //Вот заполняю экземпляр с помощью перегруженного конструктора
    //Person *B = new Person [3]; // <- ??? 
}
Добавлено через 1 час 42 минуты
Или как можно обратиться к каждому экземпляру в самом начале при объявлении?
C++
1
Person *B = new Person [3];
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.05.2013, 15:03
Ответы с готовыми решениями:

Работа с class-ами(вывести на дисплей)
создать вектор из фигур и вывести их на печать с помощью класса GROUP_OBJECT что уже реализовано...

Нужно объект типа класс проинициализировать с помощью перегруженного конструктора Class::Class( bool a )
Плиз помогите. Не знал, что я такой чайник.) Итак: есть два класса: CMyClass.h...

Разъясните код пжлст(выдает ошибку:cannot convert from 'class std::list<class c_bullet *,class std::allocator<class c_bullet *> >::iterator' to 'int')
Есть такие строки: std::list&lt;c_bullet*&gt; Bullets; ... for(auto i = Bullets.begin(); i !=...

bad class file: C:Program FilesJavajre1.5.0_02lib t.jar(java/lang/Object.class) class file has wrong version 49.0, should be 48.0
написал тестовый td_jsp.jsp фаил -&gt;&gt; &lt;html&gt; &lt;head&gt;&lt;title&gt;JSP test&lt;/title&gt;&lt;/head&gt; ...

1
13 / 13 / 6
Регистрация: 02.07.2011
Сообщений: 62
18.05.2013, 15:48 2
если вы хотите заполнить поля класса без конструктора, то это можно так:
C++
1
2
3
4
5
Person *b = new Person;
b->name="name";
b->Bday.day=1;
b->Bday.monrh=1;
b->bday.year=2013;
соответственно масив :
C++
1
2
3
4
5
6
7
8
Person *b = new Person[2];
for (int i=0;i<2;i++)
{
  b[i]->name="name";
  b[i]->Bday.day=1;
  b[i]->Bday.monrh=1;
  b[i]->bday.year=2013;
}
извиняюсь если не правильно понял вопрос.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.05.2013, 15:48

В чем отличие ref class от value class, где какой следует использовать?
САБЖ, мало по мало изучаю C++/CLI.. В голове каша, хотелось бы как то фундаментально осмыслить и...

Непонятная ошибка: Exception class EClassNotFound with message 'Class TLabeledEdit not found'
Когда написал среду в Делфи для БД Access то при запуске выдает такую ошибку. project...

Задача: реализовать наследование: interface Сотрудник - class Инженер - class Руководитель.
Помогите решить задачу и объяснить. В Eclipse. Реализовать наследование: interface Сотрудник...

Ошибка: exception class EClassNotFound with message 'Class TADOTable not found'
Аааа...Дело было так. Хотела сохранить проект,нажала save as,и только потом поняла что я...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.