C++ Web Framework Oat++ Component
在前面例子中,我们在 run 函数中定义一系列需要的组件。这就使得对象的初始化工作和业务代码耦合在一起,如下代码: ``` void run() { // 1. HttpRouter 组件对象 auto router = oatpp::web::server::HttpRouter::createShared(); router->route(...
在前面例子中,我们在 run 函数中定义一系列需要的组件。这就使得对象的初始化工作和业务代码耦合在一起,如下代码: ``` void run() { // 1. HttpRouter 组件对象 auto router = oatpp::web::server::HttpRouter::createShared(); router->route(...
前面的例子中,每一个请求的 URL 都对应了一个 HttpRequestHandler 类,并实现该类中 handle 函数,如下代码: ``` class Handler1 : public oatpp::web::server::HttpRequestHandler { public: std::shared_ptr<OutgoingResponse>...
C 语言是一种强大的编程语言,它提供了指针的概念和相关的语法。指针是一种变量,它存储了内存地址,可以用于直接访问和操作内存中的数据。 1. C 指针类型的作用 2. 多级指针 1. 指针与内存 {#title-0} =================== **指针与 int、float 等类型一样就是普通的数据类型**,唯一不同的是像 int、double 这样的类型变量...
字符串在计算机编程中具有广泛的应用。字符串指的是由字符组成的序列,它是一种常见的数据类型,用于表示和处理文本数据。在这一篇文章中,我们将会字符串相关的内容: 1. 字符串原理 2. 字符串和内存 3. 字符串操作函数 1. 字符串原理 {#title-0} =================== C 语言中的字符串是字符序列 + 特殊的 \\0 字符组成,注意 \\0 字...
1. 委托构造函数的使用场景 {#title-0} ========================= ``` // 场景1 class Box1 { public: Box1() : m_l(0), m_h(0), m_w(0) {} Box1(int l) : m_l(l), m_h(0), m_w(0) {} Box1(int l, int h) : m_l(l)...
1. 类对象的默认赋值行为 {#title-0} ======================== ``` class Demo1 { public: Demo1(int a, int b, int c) : m_a(a), m_b(b), m_c(c) {} public: int m_a; int m_b; int m_c; }; ostream& op...
常对象指的是使用 const 关键字修饰的类对象,常函数指的是由 const 关键字修饰的函数。这里需要注意:只有成员函数才可以被 const 关键字修饰,而全局函数无法被 const 关键字修饰。 1. 常函数 {#title-0} ================= 在成员函数的后面加上 const, 该函数就变成了常函数,常函数会保证不修改成员变量的值,如果修改则...
函数对象有时也叫仿函数,其本质是一个类对象,由于重载函数调用符号,其可以像普通函一样使用。 1. 函数调用符号重载语法 {#title-0} ======================== ``` class Demo { public: // 返回值:由自己来定义 void operator()() { cout << "hello ...
在 C++11 标准中引入的 `default` 关键字,主要用于在类的声明中显式指定**编译器生成默认的特殊成员函数实现**。这些特殊成员函数包括: 1. 默认构造函数(default constructor) 2. 析构函数(destructor) 3. 拷贝构造函数(copy constructor) 4. 拷贝赋值运算符(copy assignment operato...
智能指针的工厂函数是一个创建智能指针的函数,用于方便地创建特定类型的智能指针对象,这些函数通常都是以 make 开头的函数。比如 1. `std::make_unique` 用于创建 `std::unique_ptr` 实例 2. `std::make_shared` 用于创建 `std::shared_ptr` 实例 1. make_unique {#title-0} =...