Bo 的博客

主题

语言

28 篇文章

  1. Golang模块一:Golang 核心基础(补齐短板,重中之重) 1. 并发与 Goroutine 调度(必考) Goroutine vs. Thread: 关键点: 理解 GMP 调度模型(Goroutine, Machine, Processor)
  2. Python识别图片上的数学公式使用的是的:lukas-blecher/LaTeX-OCR: pix2tex: Using a ViT to convert images of equations into LaTeX code. (github.com) 其实很简单 D
  3. 通过编译源码的方式安装Python0. 安装依赖 apt install build-essential gdb lcov pkg-config \ libbz2-dev libffi-dev libgdbm-dev libgdbm-compat-dev liblzma-d
  4. 微服务篇Spring Cloud Spring Cloud组件有哪些? 注册中心:Eureka/Nacos。 负载均衡:Ribbon。 服务熔断:Hystix/Sentinel。 远程调用:Feign。 服务网关:Zuul/Gateway。 服务注
  5. Spring篇Spring Bean线程安全问题 Spring中的Bean默认是单例的。可以使用@Scope注解设置将属性设置成prototype变成多例。 Spring中的Bean不是线程安全的。 Spring Bean并没有可改变状态(例如Servi
  6. 常用模板快排模板 void quick_sort(int q[], int l, int r) { if ( l >= r ) return; int x = q[l + r >> 1], i = l - 1, j = r + 1; while (
  7. C++ sort排序(从小到大,从大到小)使用 sort() 函数,需要先引入头文件:algorithm。 #include <algorithm>。 sort() 函数的模板: /** * @brief Sort the elements of a sequence. * @in
  8. C++智能指针智能指针(Smart Point) 传统指针存在的问题 需要手段管理内存。 容易发生内存泄漏(忘记释放或出现异常等)。 释放之后产生野指针。 智能指针 智能指针就是为了解决传统指针存在的问题。 auto_ptr:属于C++98标准,在C++
  9. C++中的异常异常是一种在程序运行过程中可能会发生的错误。 异常没有被处理,会导致程序终止。 抛出异常 throw 异常信息 捕获异常 try { // 可能会发送异常的代码 } catch ( 异常类型 变量名 ) { // 处理代码 } catch
  10. C++11、C++14与C++17C++11 auto 可以从初始化表达式中推断出变量的类型,大大简化编程工作。 auto a = 10; a++; cout << a << endl; a = 11; 属于编译器特性,不影响最终的机器码质量,不影响运行效率。 declty
  11. C++类型转换C语言风格的类型转换符号 (type)expression或type(expression)。 int main() { double a = 1.1; int b = (int) a; int c = int(a); return 0;
  12. C++模板泛型 泛型,是一种将类型参数化以达到代码复用的技术,C+ +中使用模板来实现泛型。 模板(template) 格式:template <typename/class T>。 也可以指定多个类型,template <typename A, t
  13. C++运算符重载运算符重载(操作符重载):可以为运算符增加一些新的功能。 class Point { friend Point operator+(const Point &, const Point &); private: int x, y; publ
  14. C++拷贝构造函数拷贝构造函数的英文:Copy Constructor。 拷贝构造函数是构造函数的一种。 当利用已存在的对象创建一个新对象时(类似于拷贝),就会调用新对象的拷贝构造函数进行初始化。 拷贝构造函数的格式是固定的,接收一个const引用作为参数。
  15. C++特殊成员静态成员(static) 被static修饰的成员变量/函数。 可以通过对象(对象.静态成员)、对象指针(对象指针->静态成员)、类访问(类名::静态成员)。 静态成员变量 静态成员变量存储在数据段(全局区,类似于全局变量),整个程序运行过
  16. C++中的多态父类指针、子类指针 父类指针可以指向子类对象,是安全的。(继承方式必须是public) 子类指针指向父类对象是不安全的。 struct A { int a; }; struct B : A { int b; }; int main() {
  17. C++中的继承与多继承继承 可以让子类拥有父类的所有可访问成员(变量/函数)。 C++没有像Java的基类。 语法 在类名后面写个:再接上父类类名即可。Student : Person struct Person { int id; void run(){ }
  18. C++命名空间可以用来避免命名冲突。 使用namespace 名字来定义一个命名空间。使用的时候,在全局变量、函数或类前面加上空间名字::即可指定命名空间。 class Person { private: int age; public: void se
  19. C++中的类类 C++中可以使用struct和class来定义一个类。 struct Person { int age; void run() { // ... } }; class Person1 { int age; void run() { //
  20. C++内存空间的布局每个应用都有自己独立的内存空间,其内存空间一般都有:代码段(代码区)、数据段(全局区)、栈空间、堆空间。 代码段(代码区) 用于存放代码。 数据段(全局区) 用于存放全局变量等。 栈空间 每调用一个函数,就会给它分配一段连续的栈空间,等函数