Происходя из OO (C#, Java, Scala) я оцениваю очень высоко принципы и повторного использования кода и безопасности типов. Аргументы типа на вышеупомянутых языках делают задание и включают универсальные структуры данных, которые являются...
Почему невозможно иметь ссылку на void? Единственное, что я нашел в Стандарте C ++, - это строка в 8.3.2.1. Декларатор, который определяет тип "ссылка на cv void", имеет неправильную форму. Зачем ...
У меня есть небольшой вопрос: то, как я узнаю то, что вводит указатель C++? Я часто использую небольшую функцию в своих консольных программах для сбора входа, который выглядит примерно так: освободите запрос (представьте what-to-в виде строки...
У меня есть функция с прототипом пусто* myFcn (пусто* аргумент), который используется в качестве начальной точки для pthread. Я должен преобразовать аргумент интервалу для более позднего использования: интервал x = (международный) аргумент; компилятор (..
Предположим, что у меня есть следующий код: освободите* my_alloc (size_t, размер) {возвращают новый символ [размер];} освобождают my_free (пусто* ptr) {удаляют [] ptr;} действительно ли это безопасно? Или должен ptr быть брошенным для обугливания* до...
Привет там я работаю над присвоением в C, куда я должен передать в неизвестном типе параметра в функцию. Например, предположите, что у меня есть следующее: интервал changeCount (освобождают* элемент) {...
Можно ли разыменовать пустой указатель без приведения типов в языке программирования C? Кроме того, есть ли способ обобщить функцию, которая может получить указатель и сохранить его в пустоте ...
Я читаю некоторый код в реализации Ogre3D, и я не могу понять то, что пустоту * означает переменная типа. Что делает указатель на пустоту, среднюю в C++?
Когда указатель на определенный тип (скажем, int, char, float, ..) увеличивается, его значение увеличивается на размер этого типа данных. Если указатель void, указывающий на данные размера x, увеличивается, ...
У меня есть массив произвольных значений, таким образом, я определил его как массив пустых указателей, таким образом, я могу указать на любой вид информации (как интервал, символьные массивы, и т.д.). Однако, как я на самом деле присваиваюсь...
I've seen a lot of the following in older C code: type_t *x = (type_t *) malloc(...); What's the point of casting the pointer returned from malloc() since it's void *? Is it because older C ...
Рассмотрим следующий фрагмент: void my_func (int a, void * b); ... struct my_struct s = {}; my_func (10, (void *) & amp; s); Необходимо ли вводить (void *) при передаче функции в функцию?
Я пытаюсь понять различия между C и C++ относительно пустых указателей. следующие компиляции в C, но не C++ (все компиляции, сделанные с gcc/g ++-ansi - педантичный - Стена): интервал* p =...
Я наследовал большое приложение, которое было первоначально записано в C (но тем временем много C++ было также добавлено к нему). Из-за исторических причин приложение содержит много указателей пустоты....
Скажите, что функция берет пустой указатель в качестве аргумента, как так: интервал func (освобождают *p); Как мы можем определить или предположить тип того, на что указывает p?
В JavaScript существует эта сладкая, сладкая функция window.setTimeout (func, 1000); который асинхронно вызовет func после 1 000 мс. Я хочу сделать что-то подобное в C++ (без многопоточности)...
Моя программа должна использовать пусто* для переноса данных или объектов в динамической ситуации с вызовом, так, чтобы это могло сослаться на данные произвольных типов, даже типов примитивов. Однако я недавно...
Я читаю книгу, и я нашел, что reinterpret_cast не должен использоваться непосредственно, а скорее бросающий для освобождения* в сочетании с static_cast: T1 * p1 =... освобождают *pv=p1; T2 * p2 = static_cast <T2*> (...
5.2.7 / 7 говорит что-то вроде: если T - «указатель на cv void», результатом является указатель на самый производный класс, на который указывает x. Какое хорошее применение этого синаткса? Когда должен ...
Я записал этот qsort: освободите qsort (пусто *[], интервал низко, интервал высоко, интервал (*compare) (пусто*, пусто*)); Когда я называю это на символе *strarr[5]; Это говорит что недопустимое преобразование из символа ** для освобождения **. Почему это
Я не знаю, как правильно отобразить это. Метод C void * function (char * h, int p, void (* vrecv) (void *, uint8_t *, size_t), void * d, const char * n, uint8_t p8, uint16_t p16, uint32_t ...
So I was going through some interview questions and I came across one about void and null pointers, which claims: a pointer with no return type is called a null pointer. It may be any kind of ...
Возможный дубликат: Что такое указатель void и что такое нулевой указатель? Я часто вижу код, похожий на следующий: void * foo(int bar); Что это значит? Означает ли это, что ...
Предположим, что в моем коде я должен сохранить пустоту * как данные член и при необходимости приведите его к исходному указателю класса. Чтобы проверить его надежность, я написал тестовую программу (linux ubuntu 4.4.1 g ++ -...
На основе этого ответа о динамическом преобразовании в void *: ...
bool eqdc (B * b1, B * b2) {return dynamic_cast (b1) == dynamic_cast (b2);
} {{1} } ...
int main () {DD * dd = new DD ();
...
Я получил это сообщение: ожидается 'void **', но аргумент имеет тип 'char ** 'когда я пытался скомпилировать что-то подобное: void myfree (void ** v)
{если (! v ||! * v) return; ...
Я немного запутался с указателем void * в C. Особенно после прочтения этого вопроса: Всегда ли sizeof (некоторый указатель) равен четырем ?, где один человек говорит, что нет гарантии, что sizeof (int *) = ...