Результаты поиска по запросу "static-cast"
+1 На самом деле одно место, где я использовал void указатель, было подходящим для использования интерфейса класса .. выглядит намного лучше после редактирования!
у код, и до сих пор я использовал такие структуры: struct s{ enum Types { zero = 0, one, two }; unsigned int type; void* data; }Мне нужна была некоторая общая структура для хранения данных из разных классов, и я хотел использовать ее в std :: ...
На некоторых архитектурах указатель может быть больше, чем просто адрес. Изменение типа указателя может изменить его битовую комбинацию, даже если он не изменяет указанный адрес.
ущем проекте стандарта (и C ++ 17),это [http://eel.is/c++draft/expr.static.cast#13]написано о static_castingvoid *: Значение типа «указатель наCV1 void »можно преобразовать в значение типа« указатель наCV2 T ”, где T - тип объекта иCV2 является ...
доступен в C ++ 11.
вляется эквивалентомstatic_cast с участиемboost::shared_ptr? Другими словами, как мне переписать следующее Base* b = new Derived(); Derived* d = static_cast<Derived*>(b);когда используешьshared_ptr? boost::shared_ptr<Base> b(new Derived()); ...
Безопасность недействительного даункаста с использованием static_cast (или reinterpret_cast) для наследования без добавления членов
Мне было интересно, что стандарт говорит о безопасности следующего кода: class A { int v; }; class B: public A { }; // no added data member A a; B& b = static_cast<B&>(a);Очевидно, тип времени выполненияa являетсяAнеBТаким образом, актерский ...
Почему я не могу static_cast между char * и unsigned char *?
По-видимому, компилятор считает их несвязанными типами и, следовательно,
> Я хочу обратное преобразование: от двойного * до двойного []. Что вы не можете получить: указатель не содержит информацию о длине массива. Однако вы знаете, что этот массив всегда имеет два элемента, поэтому: вы можете обращаться с указателем как с именем массива: double * p = кое-что (); р [0] = 1,0; р [1] = 2,0; потому что по определению arrayname [index] равно * (arrayname + index)
аюсь узнать оstatic_cast а такжеreinterpret_cast. Если я прав, стандарт (9.2.18) говорит, чтоreinterpret_cast для стручка данных безопасно: Указатель на объект POD-struct, соответствующим образом преобразованный ...
C ++, статически определять базовые классы с разными адресами?
Если у меня есть производный класс с несколькими базами, каждый указатель this для каждой базы будет отличаться от указателя этого указателя производного объ...