|
08.09.2011, 15:46
|
#1
|
Зануда с интернетом
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений (для 20,935 пользователей)
|
mutable volatile extern register auto typename explicit
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
|
(Offline)
|
|
Эти 6 пользователя(ей) сказали Спасибо impersonalis за это полезное сообщение:
|
|
08.09.2011, 18:45
|
#2
|
Разработчик
Регистрация: 12.07.2008
Сообщений: 523
Написано 196 полезных сообщений (для 470 пользователей)
|
Ответ: mutable volatile extern register auto typename explicit
имхо - тут ничего экзотического..
C-style касты в плюсовом коде юзать моветон, так что плюсовые касты ну никак не экзотические..
спецификаторы вроде тоже штука не экзотическая и встречается часто.. ну вот volatile да, не все знают. И то, в куче чтива о потокобезопасных синглтонах на него ссылаются..
вот export - риально экзотика.. да ещё какая :D
|
(Offline)
|
|
08.09.2011, 20:54
|
#3
|
Зануда с интернетом
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений (для 20,935 пользователей)
|
Ответ: mutable volatile extern register auto typename explicit
экспорт такая экзотика, что в каждом проекте DLL встречается.
Потокобезопасных синглтонов по сути не бывает: можно сделать грязный хак, который не на каждом компиляторе запустится.
Ну я тоже могу обосрать - мало не покажется (жаль только время тратить).
имхо..
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
|
(Offline)
|
|
08.09.2011, 21:32
|
#4
|
Дэвелопер
Регистрация: 10.09.2007
Сообщений: 1,442
Написано 793 полезных сообщений (для 1,460 пользователей)
|
Ответ: mutable volatile extern register auto typename explicit
последние четыре выбрасывай, все cast'ы плюсовые явно не редкость в коде.
|
(Offline)
|
|
08.09.2011, 21:34
|
#5
|
Зануда с интернетом
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений (для 20,935 пользователей)
|
Ответ: mutable volatile extern register auto typename explicit
Сообщение от ffinder
последние четыре выбрасывай, все cast'ы плюсовые явно не редкость в коде.
|
у кого-то и goto не редкость. Понятное дело, что список весьма условный.
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
|
(Offline)
|
|
08.09.2011, 21:34
|
#6
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: mutable volatile extern register auto typename explicit
Опа, за volatile спасибо, на самом деле нужная штука, т.к. в C# много приходится с потоками работать, и ловил такую проблему, где цикл в потоке нужно было отменять, но не грубо, а лишь заставить его закончиться, вот тут и была проблема, теперь не будет
|
(Offline)
|
|
08.09.2011, 21:49
|
#7
|
Дэвелопер
Регистрация: 13.02.2010
Сообщений: 1,645
Написано 620 полезных сообщений (для 2,419 пользователей)
|
Ответ: mutable volatile extern register auto typename explicit
а в чём смысл auto ? (не очень понял) (не которое появилось в c++11, а которое сейчас)
|
(Offline)
|
|
08.09.2011, 21:49
|
#8
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: mutable volatile extern register auto typename explicit
auto душевен в C++0x. а раньше был не нужен, да. по сути семантика auto это значит, что переменная объявляется в стеке. но она итак объявляется в стеке без всяких дополнительных слов.
mutable нужен для кеширования результата.
explicit тоже нужен часто.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
08.09.2011, 21:58
|
#9
|
Разработчик
Регистрация: 12.07.2008
Сообщений: 523
Написано 196 полезных сообщений (для 470 пользователей)
|
Ответ: mutable volatile extern register auto typename explicit
Ну я тоже могу обосрать - мало не покажется (жаль только время тратить).
|
я в общем-то и не обсирал тебя.
экспорт такая экзотика, что в каждом проекте DLL встречается.
|
http://ru.wikipedia.org/wiki/C%2B%2B...2.D0.BE_export
чочо, прям в каждой длл-ке такой export для шаблонов есь??..
|
(Offline)
|
|
Эти 2 пользователя(ей) сказали Спасибо falcon за это полезное сообщение:
|
|
08.09.2011, 22:20
|
#10
|
Зануда с интернетом
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений (для 20,935 пользователей)
|
Ответ: mutable volatile extern register auto typename explicit
пардон, прочитал (и далее осознавал) как extern
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
|
(Offline)
|
|
08.09.2011, 22:50
|
#11
|
Дэвелопер
Регистрация: 06.04.2009
Адрес: Запорожье
Сообщений: 1,500
Написано 1,011 полезных сообщений (для 4,642 пользователей)
|
Ответ: mutable volatile extern register auto typename explicit
Сообщение от HolyDel
mutable нужен для кеширования результата.
|
Поясни.
__________________
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
08.09.2011, 23:38
|
#12
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: mutable volatile extern register auto typename explicit
class Node
mutable mat4 localmatrix;
...
const mat4& getLocalMatrix() const;
....
const mat4& getLocalMatrix() const
{
if(need_reaclc)
localmatrix = CalcLocalMatrix(position,orient,scale);
return localmatrix;
}
|
(Offline)
|
|
08.09.2011, 23:45
|
#13
|
Зануда с интернетом
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений (для 20,935 пользователей)
|
Ответ: mutable volatile extern register auto typename explicit
иными словами - изменение члена класса (с идентификатором mutable) даже из const-метода (что и написано по ссылкам)
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
|
(Offline)
|
|
09.09.2011, 00:15
|
#14
|
Терабайт исходников
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений (для 6,051 пользователей)
|
Ответ: mutable volatile extern register auto typename explicit
class Node
mutable mat4 localmatrix;
...
const mat4& getLocalMatrix() const;
....
const mat4& getLocalMatrix() const
{
if(need_reaclc)
localmatrix = CalcLocalMatrix(position,orient,scale);
return localmatrix;
}
|
я не вкурил. какой смысл в const в функциях? что нельзя будет полученную матрицу менять, взяв её через getLocalMatrix? а mutable делает, что всё-таки можно менять? но ТОЛЬКО внутри объекта-носителя mutable данных?
как это связано с выражением "кеширование результата"?
|
(Offline)
|
|
09.09.2011, 00:24
|
#15
|
Зануда с интернетом
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений (для 20,935 пользователей)
|
Ответ: mutable volatile extern register auto typename explicit
Холи привёл конкретный (частный) пример использования.
я не вкурил. какой смысл в const в функциях? что нельзя будет полученную матрицу менять, взяв её через getLocalMatrix? а mutable делает, что всё-таки можно менять?
|
конст-функция не изменяет члены класса, кроме тех, что объявлены с mutable (при попытке изменить неmutable член в конст-функции компилятор запротестует).
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 09:42.
|