На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела *nix / gcc / Eclipse / Qt / wxWidgets / GTK+
  • При создании темы ОБЯЗАТЕЛЬНО указывайте версию тулкита / библиотеки / компилятора.
  • Перед тем как задать вопрос, сформулируйте его правильно, чтобы вас могли понять.
  • Нарушение Правил может повлечь наказание со стороны модераторов.


Полезные ссылки:
user posted image Boost по-русски
user posted image Qt по-русски
Модераторы: archimed7592
  
> Сделать const неконстом и обратно. , Qt Creator v.3.5.x.
    Пусть есть int i=2. Что-то с ним сделали - и теперь его нужно заморозить. При этом это глобальная переменная, просто записать ее в локальную в ф-ции не получится.

    Какие есть способы присваивать и устранять const у переменных?
      хм, и что-то должно произойти, если кто-то захочет изменить значение этой переменной, когда у неё будет "флаг" const? :) исключение?
      для обхода const есть mutable, но это кагбэ не совсем то. проще всего завести флаг аля
      ExpandedWrap disabled
        bool is_mutable_now

      который менять под мутексом
      Сообщение отредактировано: _lcf_ -
        Цитата _lcf_ @

        Не исключение. Сначала программе требуется 1 конст. Спустя время она изменяет его, корректно, ей это необходимо - и надо заморозить его снова.

        А вообще конст можно изменить через указатель? Просто в адрес записать что требуется путем CopyMemory или чем-то в таком духе.
          что-то ты странного хочешь, можно так:
          ExpandedWrap disabled
            int        i = 4;         // Non-const object.
            const int* p = &i;        // const pointer.
             
            *const_cast<int*>(p) = 5; // Legal.

          https://softwareengineering.stackexchange.c...table-and-const
            Цитата _lcf_ @
            что-то ты странного хочешь, можно так:

            Можно окружить переменную классом.
            Перегрузить "=", добавить методы "Lock" и "UnLock" итп.
            ---
            Только непонятно, чем не правильное использование метода "=", отличается
            от не правильного использования методов Lock/UnLock ?
            ---
            Можно попытаться использовать "VirtualProtectEx" для разрешения/запрещения записи в память.
            Сообщение отредактировано: ЫукпШ -
            0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
            0 пользователей:


            Рейтинг@Mail.ru
            [ Script execution time: 0,0490 ]   [ 17 queries used ]   [ Generated: 24.04.24, 01:31 GMT ]