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

Преобразование типов - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ скажите пожалуйста, что означает здесь b. ,это какия-либо функция или что? http://www.cyberforum.ru/cpp-beginners/thread314064.html
скажите пожалуйста, что означает здесь b. ,это какия-либо функция или что? //анализируем все клетки доски for(int i = 0; i < 8; i++) for(int j = 0; j < 8; j++) moves = b.TestSquare(i,j);
C++ Наследование\строки В некоторых компьютерных языках, таких, как Visual Basic, есть опера- ции, с помощью которых можно выделить часть строки и присвоить ее другой строке. (В стандартном классе string предложены различные под- ходы.) Используя наследование, добавьте такую возможность в класс Pstring из упражнения 2. В новом производном классе Pstring2 разместите три новых функции: left(), mid() и right().... http://www.cyberforum.ru/cpp-beginners/thread314050.html
Класс наследуемый от двух базовых классов C++
Друзья Являеться ли класс (А)- Классом наследуемым от двух базовых классов? Если не правильно то как нужно написать ?.Помогите врозумить ситуацию. class A :public B:public C { }; class B { }; class C {
C++ Формирование предложений.
Здравствуйте. Дан массив слов. Сформировать предложения из слов, в которых первые k букв совпадают. В результате – массив предложений. Выполнить, используя функции библиотеки <string.h>. Посимвольное обращение к элементам строки допустимо только для проверки на ‘\0’ и для установки ‘\0’. Не требовать ввода количества слов в массиве. Признаком окончания ввода массива является пустая строка....
C++ Mасив turbo С++ http://www.cyberforum.ru/cpp-beginners/thread314024.html
Вычислить сумму и количество четных элементов одномерного массива, и записать в строковую переменную последовательно нечетные элементы. Количество элементов массива должен задавать пользователь. Вывод на экран результатов в понятном виде. Буду благодарен если поможете!
C++ Запись символов CR и LF в COM порт Ребят, как записать в COM порт символы возврата каретки и переноса сроки CR и LF? При попытке записи посредствам команды WriteFile, каждый символ транслируется в HEX, всё бы ничего, но символы CR и LF транслируются не правильно. Как бы сделать так, чтоб они транслировались именно в 0D и 0A ? подробнее

Показать сообщение отдельно
WASAW
3 / 3 / 0
Регистрация: 10.11.2009
Сообщений: 102
06.06.2011, 12:28     Преобразование типов
Подскажите пожалуйста. Есть класс для работы со строками
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
class String                    //  Объявление строкового класса
{
   private:
       char* S;                  //  Строка
       size_t len;                  //  Длина строки
   public:
       String();                 //  Конструктор по умолчанию
       String(const char* s);    //  Перегруженный конструктор
       String(const String& s);  //  Конструктор копирования
       ~String() { delete [] S; }//  Деструктор         
       //  Дружественные функции
        //  Перегрузка бинарного оператора
        //  Функция реализует сцепление строк
        friend String operator+(const String&, const String&);    
        //  Перегрузка бинарного оператора
        //  Функция реализует пересечение строк
        friend String operator*(const String&, const String&);
        //  Перегрузка унарного оператора
        //  Функция реализует поиск уникальных элементов строки
        friend String operator!(const String&);        
        //  Перегрузка бинарного оператора
        //  Функция реализует ввод объектов класса с клавиатуры
        friend istream& operator>>(istream&, String&);
        //  Перегрузка бинарного оператора
        //  Функция реализует вывод объектов класса на экран
        friend ostream& operator<<(ostream&, const String&);
        //Перегрузка операторов сравнения
        friend void operator<(const String&, const String&);
        friend void operator>(const String&, const String&);
        friend void operator<=(const String&, const String&);
        friend void operator>=(const String&, const String&);
        friend void operator==(const String&, const String&);
        friend void operator!=(const String&, const String&);
        String& operator=(const String&);
        //  Перегрузка типа
        //  Функция реализует преобразование объекта класса к типу char*
        operator char*() { return S; }
        //  Функция возвращает длину строки
        size_t GetLen() { return len; }  
        //Преобразование к типу интеджер
        int transformation_int();
        //Преобразование к типу дабл
        double transformation_double();
        //Преобразование к типу лонг
        long int transformation_long();
};
Нужно преобразовать из строки в число типа int:
C++
1
2
3
4
5
6
7
int String::transformation_int()
{
    String *str = this;
    int result;
    result = atoi(*str);
    return result;  
}
если ввести 15.5 в result заносится 15, но в объект класса String все равно заносится 15.5
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 18:20. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru