#include #include #include #include #include using namespace std; struct Node { ssortingng str; vector vec; Node(){}; ~Node(){}; }; int main () { deque deq; for(int i = 0; i < 100; ++i) { Node tmp; tmp.vec.resize(100000); deq.push_back(tmp); } while(!deq.empty()) { deq.pop_front(); } { deque().swap(deq); } cout<<"releas\n"; sleep(80000000); return 0; } En top , j’ai trouvé […]
J’ai une simple question Disons que j’ai deux fonctions en C ++: void DoSomething(); et bool DoSomething(); Existe-t-il une différence de mémoire ou de vitesse entre ces deux fonctions? Et deuxième question, liée à la première: je suppose qu’il y a une différence de vitesse, car bool doit renvoyer une certaine valeur. Mais je n’ai […]
Je dois gérer une énorme quantité de données qui ne rentre généralement pas dans la mémoire principale. La façon dont j’accède à ces données a une grande localité, aussi la mise en cache de certaines de ses données en mémoire semble être une bonne option. Est-il faisable de simplement malloc () un grand tableau et […]
Il y a probablement déjà une réponse à cette question quelque part, mais je ne la trouve pas. Comme indiqué dans cette question: l’ access à un tableau en dehors des limites ne génère aucune erreur, pourquoi? , C ++ n’impose pas les limites d’un tableau, mais choisit plutôt de fournir un comportement indéfini. Ce […]
J’utilise une fonction qui capture un écran à l’aide du mehtod BitBlt et peut ensuite renvoyer un HBITMAP . int screenCapture() { int width = 1000; int height = 700; HDC hdcTemp, hdc; BYTE* bitPointer; hdc = GetDC(HWND_DESKTOP); hdcTemp = CreateCompatibleDC(hdc); BITMAPINFO bitmap; bitmap.bmiHeader.biSize = sizeof(bitmap.bmiHeader); bitmap.bmiHeader.biWidth = width; bitmap.bmiHeader.biHeight = -height; bitmap.bmiHeader.biPlanes = 1; […]
J’essayais d’implémenter une liste chaînée pour résoudre un problème d’algorithme. Cela a fondamentalement fonctionné, cependant, il s’est avéré que j’utilisais trop de mémoire. J’apprécierais que quelqu’un souligne les défauts de la conception du destructeur suivant. template struct Node { Node(): item(0),next(0) {} Node(T x): item(x),next(0) {} T item; Node* next; }; template struct List { […]
Dans le cadre de ma thèse, je travaille dans un projet CUDA (modification du code de quelqu’un d’autre, ajout de fonctionnalités, etc.). Être nouveau chez CUDA, cela devient un véritable défi pour moi. Je travaille avec la capacité de calcul 1.3 cartes, 4 x Tesla C1060. Et malheureusement, je suis frappé certaines limitations de la […]
Je travaille avec les informations de débogage. J’essaie d’écrire un peu comme un “parsingur d’informations de débogage”, j’utilise les bibliothèques DWARF et ELF pour le faire, mais ils n’offrent rien d’autre que des informations sur l’espace mémoire, j’essaie d’obtenir les données dans cet espace mémoire. . Je suis accro au programme. J’utilise un outil appelé […]
Je suis actuellement en train de tester une application basée sur Leveldb. Je veux le configurer de telle sorte que les valeurs-clés soient toujours lues à partir du disque et non de la mémoire. Pour cela, je dois limiter la mémoire utilisée par le programme. J’utilise des paires clé-valeur de 100 octets chacune et 100 […]
J’ai un morceau de code assez simple qui lance un QProcess: launchResultCode = ELaunchOk; QDateTime beginTimeStamp = QDateTime::currentDateTime(); command->start(commandpath, myParameters); if (command->waitForStarted(waitToStart)) { if (!myStdIn.isEmpty()) command->write(myStdIn.toLatin1()); command->closeWriteChannel(); qDebug() <waitForFinished(waitToFinish)) { myStdOut = command->readAllStandardOutput(); myStdErr = command->readAllStandardError(); } else { launchResultCode = ELaunchFinishFailed; } } else { launchResultCode = ELaunchStartFailed; } qDebug() << "postcorrupt"; Et cela […]