Вопросы
Почему вызывается деструктор для объекта, который не был удален?
Вопрос на StackOverflow: Проблема с компиляцией из-за удаленного деструктора
У меня есть следующий код на C++:
struct A
{
~A() = delete;
};
int main()
{
new A{};
}
При компиляции я получаю сообщение об ошибке:
error: use of deleted function 'A::~A()'
new...
Является ли ++*ptr++ некорректным поведением в C++?
Я столкнулся с вопросом на тесте (не хотел его придумывать сам, но тест это задал. Я понимаю, что код плохой) о том, как оценить выражение ++*ptr++
.
int Ar[] = { 6, 3, 8, 10, 4, 6, 7 };
int *Ptr = Ar;
cout << ++*Ptr++;
Однако у меня есть подозрение, что это может привести к...
Доступ к атрибутам на литералах работает для всех типов, кроме `int`; почему?
Проблема с вызовом метода __str__
у целых чисел в Python
Я прочитал, что в Python все является объектом, поэтому решил поэкспериментировать с различными типами данных и вызвать метод __str__
у них. Сначала это меня очень вдохновило, но затем возникло недоумение.
Вот что я попытался...
Каков смысл фразы "зарезервировано для любого использования"?
Описание проблемы:
Я столкнулся с некоторыми несоответствиями в стандарте C и C++, касающимися зарезервированных идентификаторов. В спецификации стандартной библиотеки C, в разделе C17 7.1.3 «Зарезервированные идентификаторы», указано, что:
- Все идентификаторы, которые начинаются с...
Удален конструктор по умолчанию. Объекты все еще могут быть созданы... иногда
Наивное, оптимистичное и... совершенно ошибочное представление о синтаксисе унифицированной инициализации в C++11
Я думал, что с введением C++11 объекты пользовательских типов должны создаваться с помощью нового синтаксиса , вместо старого (...) (за исключением конструкторов, перегруженных на...
Что говорит стандарт C++ о размерах типов int и long?
Я ищу детальную информацию о размерах базовых типов C++. Я понимаю, что это зависит от архитектуры (16 бит, 32 бит, 64 бита) и компилятора.
Но существуют ли какие-либо стандарты для C++?
Я использую Visual Studio 2008 на 32-битной архитектуре. Вот что я получил:
char : 1 byte
short : 2...
Правила использования символа подчеркивания в идентификаторах C++
В C++ распространено именовать переменные-члены с использованием префикса, чтобы обозначить, что это переменные класса, а не локальные переменные или параметры. Если вы работали с MFC, вы, вероятно, используете m_foo. Я также иногда видел использование myFoo.
В C# (или, возможно, только в .NET)...