Diff
checker
Texto
Texto
Imágenes
Documentos
Excel
Carpetas
Legal
Enterprise
Aplicación de escritorio
Precios
Iniciar sesión
Descargar Diffchecker Desktop
Comparar texto
Encuentra la diferencia entre dos archivos de texto
Herramientas
Historial
Editor live
Ocultar sin cambios
Sin ajuste de línea
Vista
Dividido
Unificado
Nivel de detalle
Inteligente
Palabra
Letra
Resaltado de sintaxis
Elegir sintaxis
Ignorar
Transformar texto
Ir al primer cambio
Editar entrada
Diffchecker Desktop
La forma más segura de usar Diffchecker. ¡Obtén la app de Diffchecker Desktop: tus diffs nunca salen de tu computadora!
Obtener Desktop
Untitled diff
Creado
hace 10 años
El diff nunca expira
Borrar
Exportar
Compartir
Explicar
0 eliminaciones
Líneas
Total
Eliminado
Caracteres
Total
Eliminado
Para continuar usando esta función, actualice a
Diff
checker
Pro
Ver precios
45 líneas
Copiar todo
2 adiciones
Líneas
Total
Añadido
Caracteres
Total
Añadido
Para continuar usando esta función, actualice a
Diff
checker
Pro
Ver precios
47 líneas
Copiar todo
Bar::~Bar():
Bar::~Bar():
mov QWORD PTR [rdi], OFFSET FLAT:vtable for Bar+16
mov QWORD PTR [rdi], OFFSET FLAT:vtable for Bar+16
mov edx, 4
mov edx, 4
mov esi, OFFSET FLAT:Bar::~Bar()::__func__
mov esi, OFFSET FLAT:Bar::~Bar()::__func__
mov edi, OFFSET FLAT:std::cout
mov edi, OFFSET FLAT:std::cout
jmp std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)
jmp std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)
Bar::~Bar():
Bar::~Bar():
push rbx
push rbx
mov esi, OFFSET FLAT:Bar::~Bar()::__func__
mov esi, OFFSET FLAT:Bar::~Bar()::__func__
mov rbx, rdi
mov rbx, rdi
mov QWORD PTR [rdi], OFFSET FLAT:vtable for Bar+16
mov QWORD PTR [rdi], OFFSET FLAT:vtable for Bar+16
mov edx, 4
mov edx, 4
mov edi, OFFSET FLAT:std::cout
mov edi, OFFSET FLAT:std::cout
call std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)
call std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)
mov rdi, rbx
mov rdi, rbx
mov esi, 8
mov esi, 8
pop rbx
pop rbx
jmp operator delete(void*, unsigned long)
jmp operator delete(void*, unsigned long)
main:
main:
sub rsp, 24
sub rsp, 24
mov rdi, rsp
mov rdi, rsp
call Foo::Foo()
call Foo::Foo()
mov esi, OFFSET FLAT:Bar::~Bar()::__func__
mov esi, OFFSET FLAT:Bar::~Bar()::__func__
mov edi, OFFSET FLAT:std::cout
mov edi, OFFSET FLAT:std::cout
mov QWORD PTR [rsp], OFFSET FLAT:vtable for Bar+16
mov QWORD PTR [rsp], OFFSET FLAT:vtable for Bar+16
call std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)
call std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)
xor eax, eax
xor eax, eax
add rsp, 24
add rsp, 24
ret
ret
sub rsp, 8
sub rsp, 8
mov edi, OFFSET FLAT:std::__ioinit
mov edi, OFFSET FLAT:std::__ioinit
call std::ios_base::Init::Init()
call std::ios_base::Init::Init()
mov edx, OFFSET FLAT:__dso_handle
mov edx, OFFSET FLAT:__dso_handle
mov esi, OFFSET FLAT:std::__ioinit
mov esi, OFFSET FLAT:std::__ioinit
mov edi, OFFSET FLAT:std::ios_base::Init::~Init()
mov edi, OFFSET FLAT:std::ios_base::Init::~Init()
add rsp, 8
add rsp, 8
jmp __cxa_atexit
jmp __cxa_atexit
Bar::~Bar()::__func__:
Bar::~Bar()::__func__:
.string "~Bar"
.string "~Bar"
Copiar
Copiado
Copiar
Copiado
typeinfo name for VirtualDestructor:
typeinfo for VirtualDestructor:
typeinfo name for Foo:
typeinfo name for Foo:
typeinfo for Foo:
typeinfo for Foo:
typeinfo name for Bar:
typeinfo name for Bar:
typeinfo for Bar:
typeinfo for Bar:
vtable for Bar:
vtable for Bar:
Diferencias guardadas
Texto original
Abrir archivo
Bar::~Bar(): mov QWORD PTR [rdi], OFFSET FLAT:vtable for Bar+16 mov edx, 4 mov esi, OFFSET FLAT:Bar::~Bar()::__func__ mov edi, OFFSET FLAT:std::cout jmp std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long) Bar::~Bar(): push rbx mov esi, OFFSET FLAT:Bar::~Bar()::__func__ mov rbx, rdi mov QWORD PTR [rdi], OFFSET FLAT:vtable for Bar+16 mov edx, 4 mov edi, OFFSET FLAT:std::cout call std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long) mov rdi, rbx mov esi, 8 pop rbx jmp operator delete(void*, unsigned long) main: sub rsp, 24 mov rdi, rsp call Foo::Foo() mov esi, OFFSET FLAT:Bar::~Bar()::__func__ mov edi, OFFSET FLAT:std::cout mov QWORD PTR [rsp], OFFSET FLAT:vtable for Bar+16 call std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*) xor eax, eax add rsp, 24 ret sub rsp, 8 mov edi, OFFSET FLAT:std::__ioinit call std::ios_base::Init::Init() mov edx, OFFSET FLAT:__dso_handle mov esi, OFFSET FLAT:std::__ioinit mov edi, OFFSET FLAT:std::ios_base::Init::~Init() add rsp, 8 jmp __cxa_atexit Bar::~Bar()::__func__: .string "~Bar" typeinfo name for Foo: typeinfo for Foo: typeinfo name for Bar: typeinfo for Bar: vtable for Bar:
Texto modificado
Abrir archivo
Bar::~Bar(): mov QWORD PTR [rdi], OFFSET FLAT:vtable for Bar+16 mov edx, 4 mov esi, OFFSET FLAT:Bar::~Bar()::__func__ mov edi, OFFSET FLAT:std::cout jmp std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long) Bar::~Bar(): push rbx mov esi, OFFSET FLAT:Bar::~Bar()::__func__ mov rbx, rdi mov QWORD PTR [rdi], OFFSET FLAT:vtable for Bar+16 mov edx, 4 mov edi, OFFSET FLAT:std::cout call std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long) mov rdi, rbx mov esi, 8 pop rbx jmp operator delete(void*, unsigned long) main: sub rsp, 24 mov rdi, rsp call Foo::Foo() mov esi, OFFSET FLAT:Bar::~Bar()::__func__ mov edi, OFFSET FLAT:std::cout mov QWORD PTR [rsp], OFFSET FLAT:vtable for Bar+16 call std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*) xor eax, eax add rsp, 24 ret sub rsp, 8 mov edi, OFFSET FLAT:std::__ioinit call std::ios_base::Init::Init() mov edx, OFFSET FLAT:__dso_handle mov esi, OFFSET FLAT:std::__ioinit mov edi, OFFSET FLAT:std::ios_base::Init::~Init() add rsp, 8 jmp __cxa_atexit Bar::~Bar()::__func__: .string "~Bar" typeinfo name for VirtualDestructor: typeinfo for VirtualDestructor: typeinfo name for Foo: typeinfo for Foo: typeinfo name for Bar: typeinfo for Bar: vtable for Bar:
Encontrar la diferencia