Diff
checker
Texte
Texte
Images
Documents
Excel
Dossiers
Legal
Enterprise
Application de bureau
Prix
Se connecter
Télécharger Diffchecker Desktop
Comparer le texte
Trouver la différence entre deux fichiers texte
Outils
Historique
Éditeur live
Cacher identiques
Sans retour à la ligne
Vue
Divisé
Unifié
Niveau de précision
Intelligent
Mot
Caractère
Coloration syntaxique
Choisir la syntaxe
Ignorer
Transformer le texte
Aller au premier écart
Modifier l'entrée
Diffchecker Desktop
La façon la plus sécurisée d'utiliser Diffchecker. Obtenez l'application Diffchecker Desktop : vos diffs ne quittent jamais votre ordinateur !
Obtenir Desktop
non_trivial_templated_type_in_container
Créé
il y a 4 ans
Le diff n'expire jamais
Effacer
Exporter
Partager
Expliquer
4 suppressions
Lignes
Total
Supprimé
Caractères
Total
Supprimé
Pour continuer à utiliser cette fonctionnalité, passez à
Diff
checker
Pro
Voir les prix
66 lignes
Copier tout
4 ajouts
Lignes
Total
Ajouté
Caractères
Total
Ajouté
Pour continuer à utiliser cette fonctionnalité, passez à
Diff
checker
Pro
Voir les prix
66 lignes
Copier tout
Copier
Copié
Copier
Copié
F1
(std::unordered_set<std::vector<int, std::allocator<int> >, std::hash<std::vector<int, std::allocator<int> > >, std::equal_to<std::vector<int, std::allocator<int> > >, std::allocator<std::vector<int, std::allocator<int> > > > const&):
G1
(std::unordered_set<std::vector<int, std::allocator<int> >, std::hash<std::vector<int, std::allocator<int> > >, std::equal_to<std::vector<int, std::allocator<int> > >, std::allocator<std::vector<int, std::allocator<int> > > > const&):
mov rax, QWORD PTR [rdi+16]
mov rax, QWORD PTR [rdi+16]
xor edx, edx
xor edx, edx
test rax, rax
test rax, rax
je .L1
je .L1
.L3:
.L3:
mov rcx, QWORD PTR [rax+8]
mov rcx, QWORD PTR [rax+8]
mov rax, QWORD PTR [rax]
mov rax, QWORD PTR [rax]
add edx, DWORD PTR [rcx]
add edx, DWORD PTR [rcx]
test rax, rax
test rax, rax
jne .L3
jne .L3
.L1:
.L1:
mov eax, edx
mov eax, edx
ret
ret
Copier
Copié
Copier
Copié
F2
(std::set<std::vector<int, std::allocator<int> >, std::less<std::vector<int, std::allocator<int> > >, std::allocator<std::vector<int, std::allocator<int> > > > const&):
G2
(std::set<std::vector<int, std::allocator<int> >, std::less<std::vector<int, std::allocator<int> > >, std::allocator<std::vector<int, std::allocator<int> > > > const&):
push rbp
push rbp
mov rbp, rdi
mov rbp, rdi
push rbx
push rbx
add rbp, 8
add rbp, 8
xor ebx, ebx
xor ebx, ebx
sub rsp, 8
sub rsp, 8
mov rdi, QWORD PTR [rdi+24]
mov rdi, QWORD PTR [rdi+24]
cmp rdi, rbp
cmp rdi, rbp
je .L7
je .L7
.L9:
.L9:
mov rax, QWORD PTR [rdi+32]
mov rax, QWORD PTR [rdi+32]
add ebx, DWORD PTR [rax]
add ebx, DWORD PTR [rax]
call std::_Rb_tree_increment(std::_Rb_tree_node_base const*)
call std::_Rb_tree_increment(std::_Rb_tree_node_base const*)
mov rdi, rax
mov rdi, rax
cmp rax, rbp
cmp rax, rbp
jne .L9
jne .L9
.L7:
.L7:
add rsp, 8
add rsp, 8
mov eax, ebx
mov eax, ebx
pop rbx
pop rbx
pop rbp
pop rbp
ret
ret
Copier
Copié
Copier
Copié
F3
(std::__cxx11::list<std::vector<int, std::allocator<int> >, std::allocator<std::vector<int, std::allocator<int> > > > const&):
G3
(std::__cxx11::list<std::vector<int, std::allocator<int> >, std::allocator<std::vector<int, std::allocator<int> > > > const&):
mov rax, QWORD PTR [rdi]
mov rax, QWORD PTR [rdi]
xor edx, edx
xor edx, edx
cmp rax, rdi
cmp rax, rdi
je .L13
je .L13
.L15:
.L15:
mov rcx, QWORD PTR [rax+16]
mov rcx, QWORD PTR [rax+16]
mov rax, QWORD PTR [rax]
mov rax, QWORD PTR [rax]
add edx, DWORD PTR [rcx]
add edx, DWORD PTR [rcx]
cmp rax, rdi
cmp rax, rdi
jne .L15
jne .L15
.L13:
.L13:
mov eax, edx
mov eax, edx
ret
ret
Copier
Copié
Copier
Copié
F4
(std::vector<std::vector<int, std::allocator<int> >, std::allocator<std::vector<int, std::allocator<int> > > > const&):
G4
(std::vector<std::vector<int, std::allocator<int> >, std::allocator<std::vector<int, std::allocator<int> > > > const&):
mov rax, QWORD PTR [rdi]
mov rax, QWORD PTR [rdi]
mov rsi, QWORD PTR [rdi+8]
mov rsi, QWORD PTR [rdi+8]
xor edx, edx
xor edx, edx
cmp rax, rsi
cmp rax, rsi
je .L18
je .L18
.L20:
.L20:
mov rcx, QWORD PTR [rax]
mov rcx, QWORD PTR [rax]
add rax, 24
add rax, 24
add edx, DWORD PTR [rcx]
add edx, DWORD PTR [rcx]
cmp rsi, rax
cmp rsi, rax
jne .L20
jne .L20
.L18:
.L18:
mov eax, edx
mov eax, edx
ret
ret
Différences enregistrées
Texte d'origine
Ouvrir un fichier
F1(std::unordered_set<std::vector<int, std::allocator<int> >, std::hash<std::vector<int, std::allocator<int> > >, std::equal_to<std::vector<int, std::allocator<int> > >, std::allocator<std::vector<int, std::allocator<int> > > > const&): mov rax, QWORD PTR [rdi+16] xor edx, edx test rax, rax je .L1 .L3: mov rcx, QWORD PTR [rax+8] mov rax, QWORD PTR [rax] add edx, DWORD PTR [rcx] test rax, rax jne .L3 .L1: mov eax, edx ret F2(std::set<std::vector<int, std::allocator<int> >, std::less<std::vector<int, std::allocator<int> > >, std::allocator<std::vector<int, std::allocator<int> > > > const&): push rbp mov rbp, rdi push rbx add rbp, 8 xor ebx, ebx sub rsp, 8 mov rdi, QWORD PTR [rdi+24] cmp rdi, rbp je .L7 .L9: mov rax, QWORD PTR [rdi+32] add ebx, DWORD PTR [rax] call std::_Rb_tree_increment(std::_Rb_tree_node_base const*) mov rdi, rax cmp rax, rbp jne .L9 .L7: add rsp, 8 mov eax, ebx pop rbx pop rbp ret F3(std::__cxx11::list<std::vector<int, std::allocator<int> >, std::allocator<std::vector<int, std::allocator<int> > > > const&): mov rax, QWORD PTR [rdi] xor edx, edx cmp rax, rdi je .L13 .L15: mov rcx, QWORD PTR [rax+16] mov rax, QWORD PTR [rax] add edx, DWORD PTR [rcx] cmp rax, rdi jne .L15 .L13: mov eax, edx ret F4(std::vector<std::vector<int, std::allocator<int> >, std::allocator<std::vector<int, std::allocator<int> > > > const&): mov rax, QWORD PTR [rdi] mov rsi, QWORD PTR [rdi+8] xor edx, edx cmp rax, rsi je .L18 .L20: mov rcx, QWORD PTR [rax] add rax, 24 add edx, DWORD PTR [rcx] cmp rsi, rax jne .L20 .L18: mov eax, edx ret
Texte modifié
Ouvrir un fichier
G1(std::unordered_set<std::vector<int, std::allocator<int> >, std::hash<std::vector<int, std::allocator<int> > >, std::equal_to<std::vector<int, std::allocator<int> > >, std::allocator<std::vector<int, std::allocator<int> > > > const&): mov rax, QWORD PTR [rdi+16] xor edx, edx test rax, rax je .L1 .L3: mov rcx, QWORD PTR [rax+8] mov rax, QWORD PTR [rax] add edx, DWORD PTR [rcx] test rax, rax jne .L3 .L1: mov eax, edx ret G2(std::set<std::vector<int, std::allocator<int> >, std::less<std::vector<int, std::allocator<int> > >, std::allocator<std::vector<int, std::allocator<int> > > > const&): push rbp mov rbp, rdi push rbx add rbp, 8 xor ebx, ebx sub rsp, 8 mov rdi, QWORD PTR [rdi+24] cmp rdi, rbp je .L7 .L9: mov rax, QWORD PTR [rdi+32] add ebx, DWORD PTR [rax] call std::_Rb_tree_increment(std::_Rb_tree_node_base const*) mov rdi, rax cmp rax, rbp jne .L9 .L7: add rsp, 8 mov eax, ebx pop rbx pop rbp ret G3(std::__cxx11::list<std::vector<int, std::allocator<int> >, std::allocator<std::vector<int, std::allocator<int> > > > const&): mov rax, QWORD PTR [rdi] xor edx, edx cmp rax, rdi je .L13 .L15: mov rcx, QWORD PTR [rax+16] mov rax, QWORD PTR [rax] add edx, DWORD PTR [rcx] cmp rax, rdi jne .L15 .L13: mov eax, edx ret G4(std::vector<std::vector<int, std::allocator<int> >, std::allocator<std::vector<int, std::allocator<int> > > > const&): mov rax, QWORD PTR [rdi] mov rsi, QWORD PTR [rdi+8] xor edx, edx cmp rax, rsi je .L18 .L20: mov rcx, QWORD PTR [rax] add rax, 24 add edx, DWORD PTR [rcx] cmp rsi, rax jne .L20 .L18: mov eax, edx ret
Trouver la différence