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

Изменить const с помощью mutable - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ странный "глюк" http://www.cyberforum.ru/cpp-beginners/thread439052.html
при опредедении следующего символьного массива: char с = "abcde"; ошибки нет. Всё понятно. Пять символов, плюс символ окончания строки '\0' а при char с = "абвгд"; редактор Visual Studio 2010 Express edition подчёркивает как ошибку "абвгд" и пишет: "Error:значение типа "const char" нельзя использовать для инициализации сущности типа "char" Но сама программа работает без ошибок.
C++ Вероятное зацикливание Приведет ли такой код к краху? class MyClass1 { ... MyClass2 * ptr2; } class MyClass2 { http://www.cyberforum.ru/cpp-beginners/thread439036.html
Приложение для безопасного извлечение устройства из usb C++
Приветствую, знатоков С++! хочу написать приложение для облегчения этого надоедливого процесса: левой кнопкой по значку / извлечение "usb flash device" хотелось бы на раб. столе иметь exe который будет выполнять всю эту работу по безопасному извлечению. возможно обратился не в тот блок.. не знаю. просто я еще пока не так много умею в C++. что хочу: команды, возможно api, для...
C++ 2 функции для вывода вектора и матрицы на экран
#ifndef __VECTOR_H__ #define __VECTOR_H__ #include <cmath> #include <iostream> using namespace std; class Vector { private: double x;
C++ Функция,меняющая 1и 2 элемент местами http://www.cyberforum.ru/cpp-beginners/thread438971.html
Уважаемые программисты,помогите написать программу, в которой функция меняет местами 1 и 2 элемент
C++ цикл про вывод символов с++ #include <iostream> // в плюсах по стандарту .h не пишется #include <stdlib.h> #include <iomanip> #include<conio.h> //нужен для getch #include<cmath> #include "math.h" #include <stdio.h> #include <ctype.h> #include <string> #include <sstream> подробнее

Показать сообщение отдельно
gooseim
Эксперт С++
507 / 411 / 36
Регистрация: 23.09.2010
Сообщений: 1,159
03.02.2012, 19:16     Изменить const с помощью mutable
Как вариант (только не вздумайте им пользоваться):
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
 
class A
{
private:
 const int a;
 int b;
   public:
      A(int v): a(v) {}
        void test(int v)
         {          
          *(const_cast<int*>(&a)) = v;
         }
      int getA() const {return a;}
};
 
int main()
{
   A a(10);
   a.test(100);
   std::cout << a.getA() << std::endl;
}
 
Текущее время: 21:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru