C++编程 有web框架:matt-42/lithium
1、vector是什么
在C++语言中,vector是一个动态数组容器,类似于Python中的list或JavaScript中的Array。vector容器提供了一系列常用操作,如插入元素、删除元素、访问元素等。 以下是一些常用的vector操作及其类比示例代码: 创建一个空的vector: std::vector<int> myVector; // 创建一个空的int类型vector 向vector中插入元素: myVector.push_back(10); // 在vector末尾插入元素10 myVector.push_back(20); // 在vector末尾插入元素20 myVector.push_back(30); // 在vector末尾插入元素30 获取vector的大小(元素个数): int size = myVector.size(); // 获取vector中元素的个数 访问vector中的元素: int firstElement = myVector[0]; // 访问第一个元素 int lastElement = myVector.back(); // 访问最后一个元素 删除vector中的元素: myVector.pop_back(); // 删除最后一个元素 遍历vector中的所有元素: for(int i=0; i<myVector.size(); i++) { std::cout << myVector[i] << " "; } 通过以上例子,可以看到vector容器在C++中的使用方式类似于Python中的list和JavaScript中的Array,都是一种动态数组容器,方便进行元素的插入、删除和访问操作。
一、安装json库的方法
一、代码示例
#include <lithium_http_server.hh> #include <lithium_pgsql.hh> #include "symbols.hh" using namespace li; int main() { // 创建 PostgreSQL 数据库连接 pgsql_database db = pgsql_database( s::host = "localhost", s::database = "your_database", s::user = "your_username", s::password = "your_password", s::port = 5432 ); // 定义 ORM 模式 auto schema = sql_orm_schema(db, "users") .fields(s::id = int(), s::name = std::string(), s::email = std::string()); // 连接 ORM 模式 auto users = schema.connect(); // 定义 HTTP API http_api api; api.get("/users") = [&](http_request& req, http_response& res) { // 查询所有用户 auto result = users(s::select = s::all); res.write(result); }; api.post("/users") = [&](http_request& req, http_response& res) { // 创建新用户 auto new_id = users.insert(s::name = req.get_parameter("name"), s::email = req.get_parameter("email")); res.write("User created with id: ", new_id); }; api.get("/users/:id") = [&](http_request& req, http_response& res) { // 根据 ID 查询用户 auto user = users.find_one(s::id = req.url_parameters().id); if (user) { res.write(*user); } else { res.write("User not found"); } }; api.put("/users/:id") = [&](http_request& req, http_response& res) { // 更新用户信息 auto updated = users.update(s::id = req.url_parameters().id, s::name = req.get_parameter("name"), s::email = req.get_parameter("email")); res.write("User updated: ", updated); }; api.delete("/users/:id") = [&](http_request& req, http_response& res) { // 删除用户 auto deleted = users.remove(s::id = req.url_parameters().id); res.write("User deleted: ", deleted); }; // 启动 HTTP 服务器 http_serve(api, 8080); }