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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Crudelis
Шаровик затейник
672 / 414 / 13
Регистрация: 06.05.2010
Сообщений: 1,109
#1

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

21.05.2010, 19:30. Просмотров 541. Ответов 7
Метки нет (Все метки)

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

Поясните по move конструктору - C++
У меня есть такой вот конструктор, который получает на вход мултимап из парсера, в дальнейшем он ненужен. Как правильно прописать мув...

константная ссылка в качестве аргумента конструктору копирования - C++
доброго времени суток! реализую класс String для работы со строками, программа не компилируется, если я передаю в качестве аргумента...

Как инит масс, передава указатель конструктору? - C++
#include <iostream> #include <string> using namespace std; class swapall { private: int *a; double *b; string...

Передать инициализированный std::vector конструктору базового класса - C++
В общем появилась одна проблема. Никак не пойму как можно сделать. В общем дело такое: 1) Есть класс Coord, который содержит координаты. ...

Выбор типа переменной-члена класса в зависимости от параметров передаваемых конструктору - C++
Здравствуйте форумчане! Ответьте пожалуйста на вопрос - возможно ли такое на С++ и если да, то как это реализовать? Имеется класс, в нём...

Вопрос - C++
Никто не знает как можно вот эту программу переделать в язык паскаль #include <stdio.h> #include <conio.h> #include <malloc.h> void...

Вопрос - C++
Я знаю что вопрос покажится вам смешным но укажите пожалуйста ошибку я никак не могу найти а помочь некому #include<iostream> int...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
CheshireCat
Эксперт С++
2892 / 1241 / 78
Регистрация: 27.05.2008
Сообщений: 3,363
21.05.2010, 20:12     Вопрос по конструктору #2
Конструктор чего ????
Crudelis
Шаровик затейник
672 / 414 / 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
бжни
2447 / 1652 / 84
Регистрация: 14.05.2009
Сообщений: 7,162
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
Шаровик затейник
672 / 414 / 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
Форумчанин
Эксперт С++
4511 / 2853 / 227
Регистрация: 12.12.2009
Сообщений: 7,249
Записей в блоге: 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     Вопрос по конструктору
Еще ссылки по теме:

Вопрос по if, else? - C++
Как сделать так чтобы программа работала по таком принципу: 1. Проверяется первое условие если оно верно - выводится оператор за ним. ...

Вопрос - C++
стоит ли учить язык програмирования С++? говорят язык отличный. И чем он хуже Делфи,Паскаля,Асемблер,ЛУА(ЛОА непомню правильности) , ПХП,...

Вопрос - C++
а зачем все эти задачки? и где то читал что программисту нужно знать матрицы-а зачем?

Вопрос - C++
есть командная строка cmd, в ней постоянно приходиться прописывать всякие net sh, собствено вопрос: можли написать программу которая...

Вопрос - C++
Приветствую Вас! 1. Необходимо просто описать как это должно работать: Дано: {max (a,b), y= {min(a,b), {|a+b|, если х=0,...


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

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

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