Вопросы с тегом «c++»

111
Шаблоны C ++ по Тьюрингу?

Мне сказали, что система шаблонов в C ++ является полной по Тьюрингу во время компиляции. Об этом упоминается в этом посте, а также в Википедии. . Можете ли вы привести нетривиальный пример вычисления, использующего это свойство? Полезен ли этот факт на...

111
C ++: Каков размер объекта пустого класса?

Мне было интересно, каков может быть размер объекта пустого класса . Конечно, это не может быть 0 байтов, так как на него должна быть возможность ссылаться и указывать на него, как на любой другой объект. Но насколько велик такой объект? Я использовал эту небольшую программу: #include...

111
Гарантированно ли смежность элементов std :: vector?

Мой вопрос прост: гарантированно ли элементы std :: vector смежны? В порядке слов, могу ли я использовать указатель на первый элемент std :: vector как C-массив? Если мне не изменяет память, стандарт C ++ не давал такой гарантии. Однако требования std :: vector были таковы, что их было практически...

111
Вызов метода Objective-C из функции-члена C ++?

У меня есть class ( EAGLView), который C++без проблем вызывает функцию-член класса. Теперь проблема в том, что мне нужно вызвать этот C++класс a, objective-C function [context renderbufferStorage:GL_RENDERBUFFER fromDrawable:(CAEAGLLayer*)self.layer];что я не могу сделать в C++синтаксисе. Я мог бы...

111
Что именно означают «IB» и «UB»?

Я видел, как термины «IB» и «UB» использовались несколько раз, особенно в контексте C ++. Я пробовал поискать их в Google, но очевидно, что эти двухбуквенные комбинации находят много применения. :П Итак, я спрашиваю вас ... что они имеют в виду, когда говорят, что они...

111
Как удалить неиспользуемые символы C / C ++ с помощью GCC и ld?

Мне нужно сильно оптимизировать размер исполняемого файла ( ARMразработка), и я заметил, что в моей текущей схеме сборки ( gcc+ ld) неиспользуемые символы не удаляются. Использование arm-strip --strip-unneededдля результирующих исполняемых файлов / библиотек не меняет выходной размер исполняемого...

111
Массивы против векторов: общие черты и различия [закрыто]

В его нынешнем виде этот вопрос не подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, повлечет за собой дебаты, аргументы, опросы или расширенное обсуждение. Если вы считаете, что этот вопрос можно...

111
Обеспечение порядка операторов в C ++

Предположим, у меня есть ряд операторов, которые я хочу выполнить в фиксированном порядке. Я хочу использовать g ++ с уровнем оптимизации 2, чтобы некоторые операторы можно было переупорядочить. Какие инструменты нужны, чтобы обеспечить определенный порядок высказываний? Рассмотрим следующий...

111
Как с помощью C ++ избежать циклов for с условием «if» внутри них?

Почти со всем кодом, который я пишу, я часто сталкиваюсь с проблемами сокращения наборов в коллекциях, которые в конечном итоге заканчиваются наивными условиями «если» внутри них. Вот простой пример: for(int i=0; i<myCollection.size(); i++) { if (myCollection[i] == SOMETHING) { DoStuff(); } } С...

110
Как реализованы виртуальные функции и vtable?

Все мы знаем, что такое виртуальные функции в C ++, но как они реализованы на глубоком уровне? Можно ли изменить vtable или даже получить к ней прямой доступ во время выполнения? Существует ли vtable для всех классов или только для тех, у которых есть хотя бы одна виртуальная функция? Имеют ли...

110
Понимание значения термина и концепции - RAII (Resource Acquisition is Initialization)

Не могли бы вы, разработчики C ++, дать нам хорошее описание того, что такое RAII, почему он важен и может ли он иметь какое-либо отношение к другим языкам? Я сделать немного знаю. Я считаю, что это означает «Приобретение ресурсов - это инициализация». Однако это имя не согласуется с моим...

110
Использование пространства имен std

Кажется, существуют разные взгляды на использование слова using в отношении пространства имен std. Некоторые говорят использовать ' using namespace std', другие говорят, что нет, а вместо этого используют префикс std-функций, которые должны использоваться с ' std::', в то время как другие говорят,...

110
В C / C ++ каков самый простой способ изменить порядок бит в байте?

Хотя есть несколько способов изменить порядок следования битов в байтах, мне любопытно, что «проще всего» реализовать разработчику. Под реверсом я подразумеваю: 1110 -> 0111 0010 -> 0100 Это похоже, но не дублирует этот вопрос PHP. Это похоже, но не дублирует этот вопрос C. Этот вопрос...

110
Использование настраиваемого компаратора std :: set

На этот вопрос есть ответы на Stack Overflow на русском : Компаратор для набора Я пытаюсь изменить порядок элементов по умолчанию в наборе целых чисел, чтобы он был лексикографическим, а не числовым, и я не могу получить следующее для компиляции с g ++: file.cpp: bool lex_compare(const int64_t...

110
Номер строки C / C ++

Могу ли я получить номер строки в компиляторах C / C ++ в целях отладки ? (стандартный способ или специальные способы для определенных компиляторов) например if(!Logical) printf("Not logical value at line number %d \n",LineNumber); // How to get LineNumber without writing it by my hand?(dynamic...