Обратимы ли функции S0, S1, E0, E1 из алгоритма SHA-256?
В другом классе я создаю указатель для этой функции.
void(InventoryContainer::*fnDelete)(unsigned int);
Но при попытке вызвать эту функцию,
this->fnDelete(this->IFrom);
студия показывает мне что this в данном случае не корректен.
1. Как правильно вызвать функцию?
InventoryContainer *that;
...
(that->*fnDelete)(IFrom);
2. Где то на StackOverflow видел,что для вызова такой функции нужен ещё объект.Не лучше ли тогда просто передать ссылку на объект и через него и вызвать функцию?
class A {
public:
void f1();
void f2();
};
void (A::*f)();
if (???)
f = &A::f1;
else
f = &A::f2;
...
A *pa;
...
(pa->*f)(); // вызывает f1 или f2
Between the previous and next sequence point an object shall have its stored value
modified at most once by the evaluation of an expression. Furthermore, the prior value
shall be read only to determine the value to be stored.
что такое звук
картинка это набор пикселей расположенных по координатам и состоящих из RGB (255,255,255 это белый )
Превратить звуковую дорожку в график , научиться работать со звуком , чистить его
name specifier 'Vector3<V>::' for declaration does not refer into a class
template <class V, typename T>
Vector3<V> &Vector3<V, T>::operator+=(const Vector3<V> &addVector) {
this->x += addVector.x;
this->y += addVector.y;
this->z += addVector.z;
return *this;
}
как составить рекурсию из массива
значения по возрастанию
...
1 2
1 3
1 2 3
сделал merge. И даже разрулил 100500 конфликтов. Очень уж не хочется делать merge с самого начала.
[rerere]
enabled = true
These calls return the number of bytes received, or -1 if an error occurred. The return value will be 0 when the peer has performed an orderly shutdown.
ssize_t recvd = recv(ClientSocket, buffer, MESSAGE_MAXLEN, 0);
if (recvd != SOCKET_ERROR)
{
// recv не возвращает ошибку
printf("server response: %.*s\n", recvd, buffer); // напечатает только то, что было принято
}
else
{
error = WSAGetLastError();
printf("recv failed: %d\n", error);
}
Я хочу произвести отладку и остановить программу когда будет соблюдаться определенное условие. Допустим сумма регистров eax+ebx будет равна 65463.
$ cat > main.c
int v;
static void f(int *p)
{
int i;
for (i = 0; i < 20; ++i)
*p = (i - 10) * (i - 10);
}
int main()
{
f(&v);
return 0;
}
$ gcc -g2 -o watch main.c
$ gdb ./watch
...
Reading symbols from ./watch...done.
(gdb) start
Temporary breakpoint 1 at 0x4004ec: file main.c, line 13.
Starting program: /home/jcmvbkbc/tmp/toster/watch/watch
Temporary breakpoint 1, main () at main.c:13
13 f(&v);
(gdb) watch v
Hardware watchpoint 2: v
(gdb) commands
Type commands for breakpoint(s) 2, one per line.
End with a line saying just "end".
>if (v != 4)
>continue
>end
>end
(gdb) c
Continuing.
...
Hardware watchpoint 2: v
Old value = 9
New value = 4
f (p=0x600904 <v>) at main.c:7
7 for (i = 0; i < 20; ++i)
(gdb)