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

Преобразуйте конструктор - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Дополните класс http://www.cyberforum.ru/cpp-beginners/thread603469.html
Дан класс MyString: class MyString { char *ps; int size,len; public: MyString(); MyString(int maxLength); ~MyString() { delete ps; }
C++ Что возвращает конструктор? Здравствуйте! Я не могу понять, как происходит присвоение вот здесь: object obj = object(10) object - класс, написанный программистом. По-моему, здесь вначале создается место под то, что возвращает object(10), а после этого его данные копируются в объект obj. А после этого объект, который вернуло выражение object(10), уничтожается. http://www.cyberforum.ru/cpp-beginners/thread603451.html
C++ Кто может перевести с языка С++ на Visual Basic, небольшую программку
Привет всем! помогите пожалуйста кто может с переводом программы с языка С++ на Visual Basic: Поле шахматной доски определяется парой натуральных чисел, первое из которых задает номер вертикали, а второе - горизонтали. Даны натуральные числа k, l, m, n. Требуется выяснить, являются ли поля (k, l) и (m, n) полями одного цвета. В С++: #include int main() { int k, l, m, n; //описание...
если первый элемент максимальный ответ не правильно выводить что делать мне C++
#include <iostream> #include <cmath> const int N = 3; using namespace std; void vvodMatr(int a) ; void poiskMax (int a, int&, int&) ; void perestanovka(int a, int, int) ; void print(int a) ;
C++ Вывод максимального и минимального значений http://www.cyberforum.ru/cpp-beginners/thread603439.html
Добрый день. Нужно вывести максимальное и минимальное значения на экран. Что нужно прописать для этого в main'e? Функции: template <class T> int tree<T>::get_max(T &obj) { if (tr==NULL) return 0; tree_element<T> *p; for (p=tr; p->r!=NULL; p=p->r); obj=p->elem; return 1;
C++ Удалить строки, сумма цифр которых является числом Фибоначчи Задан двумерный массив целых чисел.Удалить те строки, которые сумма цифр которых я числом Фибоначчи Добавлено через 6 минут плз,помогите=( подробнее

Показать сообщение отдельно
slavanap
0 / 0 / 0
Регистрация: 12.06.2012
Сообщений: 5
12.06.2012, 14:08     Преобразуйте конструктор
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
...
MyString::MyString(int maxLength) {
    if (maxLength <= 0)
        throw (const char*) "Error in parameter";
    ps = new char[maxLength + 1];
    size = maxLength + 1;
    len = 0;
    ps[0] = 0;
}
 
int main() {
    try {
        MyString s(-1);
    }
    catch (const char* str) {
        printf("%s\n", str);
    }
    return 0;
}
Для верности ещё можно переопределить прототип конструктора:
C++
1
MyString(int maxLength) throw(const char*);
это означает, что данная функция (конструктор) может "бросать" только исключения с типом const char*

P.S. Кстати, где реализация конструктора по умолчанию? Если там нет выделения памяти под буфер ps с помощью new, то при использовании конструктора по умолчанию на деструкторе всё упадёт.
 
Текущее время: 21:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru