暂无个人介绍
了解如何实现socket通信以及TCP连接的过程中发生了什么
本文是关于AES加密算法的逆向分析实战。通过跟栈方式找出加密位置,发现在`jslencode`函数中完成账号和密码加密。使用CryptoJS库,示例代码展示了如何用AES进行加密,其中`397151C04723421F`作为key,加密手机号和密码,并打印结果。
# C++中的友元 `friend` > 友元是用关键字声明的函数或类 类的非成员函数可以访问类的保护成员和私有成员(如果它被声明为类的友元),这是通过在外部函数声明的前面加上关键字`friend`完成的 声明方式 ```cpp friend <类型><友元函数名>(<参数表>); ``` ## 友元函数 > 友元函数只是一个普通的函数,而并非一个类的成员函数,它可以在任意地方调用,友元函数通过对象名来访问该类的私有成员或共有成员。 ```c++ #include<iostream> using namespace std; class MYclass { public:
## 标准I/O > input&output 它是一切实现的基础 stdio 标准 IO sysio 系统ui ## 文件IO: 标准IO:优点是可移植性高,缺点是性能比系统 IO 差,且功能没有系统 IO 丰富。 系统IO:因为是内核直接提供的系统调用函数,所以性能比标准 IO 高,但是可移植性比标准 IO 差 如果一个问题的解决需要用到`IO`,而且这个时候标准`IO`和系统`IO`都能解决问题的时候,我们优先使用标准`IO`; 原因 : 移植性好、合并系统调用 ## 虚拟地址空间 内核区:内核区是受保护的,用户不能对其进行读写操作,否则会引发段错误。
# C++ `lamdba` 表达式 > Lambda表达式是C++11引入的一个新特性,它允许我们在需要函数对象的地方,使用一种更加简洁的方式定义匿名函数。Lambda表达式通常用于`STL`中的算法、回调函数、事件处理程序等场合。 Lambda表达式的基本语法为: ```c++ Copy Code[capture list](parameter list) mutable exception -> return type { function body } ``` ## `lamdba`表达式在什么场合下使用 C++11 lambda表达式可以用来创建匿名函数,也就是没有函数名的
在介绍类和对象之前,我们先来简单了解一下面向过程和面向对象的概念。 面向过程是指程序的设计者关注于问题的解决过程,通过将问题分解为多个步骤和函数,并将这些步骤按照顺序组合起来实现程序的功能。这种方法的优点是结构清晰、容易理解和调试。但是随着程序的规模增大,面向过程的程序会变得越来越复杂,难以维护和扩展。 而面向对象则是一种更高级别的程序设计方式,它强调将数据和对数据的操作封装起来,形成一个对象。对象既包含数据又包含操作数据的方法,可以直接对外提供服务。这种方法具有高度的灵活性、可重用性和扩展性,易于维护和修改。