Форум программистов, компьютерный форум CyberForum.ru

Вопрос по конструктору - C++

Восстановить пароль Регистрация
 
Crudelis
Шаровик затейник
 Аватар для Crudelis
667 / 409 / 13
Регистрация: 06.05.2010
Сообщений: 1,109
21.05.2010, 19:30     Вопрос по конструктору #1
задали задание:
конструктор, позволяющий создавать строку произвольного размера;
конструктор по умолчанию, позволяющий создать строку длиной 80 символов;
подскажите пожалуйста как реализовать такой конструктор, разве можно в конструкторе создавать строку?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.05.2010, 19:30     Вопрос по конструктору
Посмотрите здесь:

C++ Вопрос по #if
Вопрос C++
C++ вопрос
C++ Вопрос
C++ Вопрос по C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
CheshireCat
Эксперт С++
2907 / 1235 / 78
Регистрация: 27.05.2008
Сообщений: 3,307
21.05.2010, 20:12     Вопрос по конструктору #2
Конструктор чего ????
Crudelis
Шаровик затейник
 Аватар для Crudelis
667 / 409 / 13
Регистрация: 06.05.2010
Сообщений: 1,109
21.05.2010, 20:13  [ТС]     Вопрос по конструктору #3
конструктор класса
Alip
53 / 32 / 3
Регистрация: 10.03.2010
Сообщений: 85
21.05.2010, 20:27     Вопрос по конструктору #4
Crudelis, создать такой конструктор по умолчанию можно. Вот пример:
C++
1
2
3
4
5
stroka::stroka()
{
    char * str;
    str= new str[81];
}
alex_x_x
бжни
 Аватар для alex_x_x
2441 / 1646 / 84
Регистрация: 14.05.2009
Сообщений: 7,163
21.05.2010, 20:28     Вопрос по конструктору #5
Цитата Сообщение от Crudelis Посмотреть сообщение
конструктор по умолчанию, позволяющий создать строку длиной 80 символов;
C++
1
2
3
4
5
6
7
8
9
10
11
class A{
public:
  A(){
    chStr = new char[80];
  }
  A( char chSize ){
    chStr = new char[chSize];
  }
private:
  char *chStr;
}
Crudelis
Шаровик затейник
 Аватар для Crudelis
667 / 409 / 13
Регистрация: 06.05.2010
Сообщений: 1,109
21.05.2010, 20:43  [ТС]     Вопрос по конструктору #6
помогите айти ошибку в коде, создаются 3 строки, в две передаются данные правильно, а в 3ю кракозябы:
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#include<iostream>
using namespace std;
class String
{
    char *str;
    int n;
public:
    String()//a
    {
        int n=80;
        str=new char[n];
    }
    String(int m)//b
    {
        str=new char[m];
    }
    String(char *user,int n)//c
    {
        str=new char[n];
        strcpy(user,str);
    }
    ~String()
    {
        cout<<"Destruct\n";
        delete []str;
    }
    void Show();
    void Inp();
};
void String::Show()
{
    cout<<str<<endl;
}
 
void String::Inp()
{
    cout<<"Введите данные в строку\n";
    gets(str); 
}
void main()
{
    setlocale(LC_CTYPE,"Rus");
    char str[80];
    int n=0;
    String A;
    A.Inp();
    cout<<"Введите размер второй строки: ";
    cin>>n;
    cin.ignore(1);
    String B(n);
    B.Inp();
    cout<<"Введите строку символов: \n";
    gets(str);
    String D(str,n);
    cout<<"\nПолученные строки\n\n";
    A.Show();
    B.Show();
    D.Show();
}
Добавлено через 5 минут
в конструкторе С такое задание: сделать конструктор, который создаёт строку и инициализирует её строкой, полученной от пользователя.
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4236 / 2769 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
21.05.2010, 20:46     Вопрос по конструктору #7
C++
1
2
3
4
5
String(char *user,int n)//c
 {
 str=new char[n];
 strcpy(str,user);
 }
Вот так попробуйте.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.05.2010, 20:49     Вопрос по конструктору
Еще ссылки по теме:

C++ Выбор типа переменной-члена класса в зависимости от параметров передаваемых конструктору
Как инит масс, передава указатель конструктору? C++
C++ Передать инициализированный std::vector конструктору базового класса

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

Или воспользуйтесь поиском по форуму:
Crudelis
Шаровик затейник
 Аватар для Crudelis
667 / 409 / 13
Регистрация: 06.05.2010
Сообщений: 1,109
21.05.2010, 20:49  [ТС]     Вопрос по конструктору #8
Kastaneda, спасибо) перепутал что куда передавать)))))
Yandex
Объявления
21.05.2010, 20:49     Вопрос по конструктору
Ответ Создать тему
Опции темы

Текущее время: 15:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru