社交网络系统的功能,包括用户注册、发布消息、关注其他用户、浏览消息流、点赞和评论等:
#include
#include
#include
#include
#include
using namespace std;
// 用户类
class User {
private:
string username;
unordered_setstring> following;
vectorstring> messages;
public:
User(string _username) : username(_username) {}
string getUsername() const {
return username;
}
void follow(User& user) {
following.insert(user.getUsername());
}
void unfollow(User& user) {
following.erase(user.getUsername());
}
void postMessage(const string& message) {
messages.push_back(message);
}
const vectorstring>& getMessages() const {
return messages;
}
const unordered_setstring>& getFollowing() const {
return following;
}
};
// 社交网络系统类
class SocialNetwork {
private:
unordered_mapstring, User> users;
public:
// 用户注册
void registerUser(const string& username) {
users[username] = User(username);
}
// 获取用户
User* getUser(const string& username) {
if (users.find(username) != users.end()) {
return &users[username];
}
return nullptr;
}
// 用户关注
void followUser(const string& follower, const string& followee) {
User* followerUser = getUser(follower);
User* followeeUser = getUser(followee);
if (followerUser && followeeUser) {
followerUser->follow(*followeeUser);
}
}
// 用户取消关注
void unfollowUser(const string& follower, const string& followee) {
User* followerUser = getUser(follower);
User* followeeUser = getUser(followee);
if (followerUser && followeeUser) {
followerUser->unfollow(*followeeUser);
}
}
// 发布消息
void postMessage(co服务器托管网nst string& username, const string& message) {
User* user = getUser(username);
if (user) {
user->postMessage(message);
}
}
// 获取用户消息流
vectorstring> getTimeline(const string& username) {
vectorstring> timeline;
User* user = getUser(username);
if (user) {
timeline = user->getMessages();
for (const auto& followee : user->getFollowing()) {
User* followeeUser = getUser(followee);
if (followeeUser) {
const vectorstring>& messages = followeeUser->getMessages();
timeline.insert(timeline.end(), messages.begin(), messages.end());
}
}
sort(timeline.begin(), timeline.end()); // 假设按照发布时间排序
}
return timeline;
}
};
int main() {
SocialNetwork network;
// 注册用户
network.registerUser("Alice");
network.registerUser("Bob");
network.registerUser("Charlie");
// 用户关注
network.followUser("Alice", "Bob");
network.followUser("Alice", "Charlie");
// 用户发布消息
network.postMessage("Alice", "Hello, this is Alice's message!");
network.postMessage("Bob", "This is Bob's message!");
// 获取用户消息流
vectorstring> aliceTimeline = network.getTimeline("Alice");
cout "Alice's Timeline:" endl;
for (const auto& message : aliceTimeline) {
cout message endl;
}
return 0;
}
在线电影订票系统的基本功能,包括搜索电影、选择座位、支付订单、管理订单和取消订单等:
#include
#include
#include
#include
using namespace std;
// 电影类
class Movie {
public:
string title;
int availableSeats;
Movie(string _title, int _availableSeats) : title(_title), availableSeats(_availableSeats) {}
};
// 订单类
class Order {
public:
string movieTitle;
int numTickets;
Order(string _movieTitle, int _numTickets) : movieTitle(_movieTitle), numTickets(_numTickets) {}
};
// 电影订票系统类
class MovieTicketSystem {
private:
unordered_mapstring, Movie> movieDatabase;
vectorOrder> orders;
public:
// 添加电影到数据库
void addMovie(string title, int availableSeats) {
Movie movie(title, availableSeats);
movieDatabase[title] = movie;
}
// 搜索电影
bool searchMovie(string title) {
if (movieDatabase.find(title) != movieDatabase.end()) {
cout "Movie Found: " title endl;
return true;
} else {
cout "Movie Not Found: " title endl;
return false;
}
}
// 选择座位并下订单
void bookTickets(string movieTitle, int numTickets) {
if (movieDatabase.find(movieTitle) != movieDatabase.end()) {
Movie& movie = movieDatabase[movieTitle];
if (movie.availableSeats >= numTickets) {
movie.availableSeats -= numTickets;
Order order(movieTitle, numTickets);
orders.push_back(order);
cout numTickets " tickets booked for movie: " movieTitle endl;
} else {
cout "Not enough seats available for movie: " movieTitle endl;
}
} else {
cout "Movie Not Found: " movieTitle endl;
}
}
// 支付订单
void payOrder() {
// 实现支付逻辑,这里简化为输出订单信息
cout "Payment Successful" endl;
for (const auto& order : orders) {
cout "Movie: " order.movieTitle ", Tickets: " order.numTickets endl;
}
orders.clear();
}
// 取消订单
void cancelOrder(string movieTitle, int numTickets) {
for (auto it = orders.begin(); it != orders.end(); ++it) {
if (it->movieTitle == movieTitle && it->numTickets == numTi服务器托管网ckets) {
Movie& movie = movieDatabase[movieTitle];
movie.availableSeats += numTickets;
orders.erase(it);
cout "Order canceled successfully for movie: " movieTitle endl;
return;
}
}
cout "Order not found for movie: " movieTitle ", Tickets: " numTickets endl;
}
};
int main() {
MovieTicketSystem system;
// 添加电影
system.addMovie("Inception", 100);
system.addMovie("The Dark Knight", 150);
// 搜索电影
system.searchMovie("Inception");
// 选择座位并下订单
system.bookTickets("Inception", 3);
system.bookTickets("Inception", 5);
// 支付订单
system.payOrder();
// 取消订单
system.cancelOrder("Inception", 3);
return 0;
}
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
相关推荐: 【深度学习】S2 数学基础 P3 微积分(上)导数与微分
目录 圆与微积分 导数与微分 导数的含义 数学定义 常用函数微分 常用微分法则 Python 实现 圆与微积分 公元前 2500 年,古希腊数学家阿基米德通过一种名为 “逼近法” 的技巧来估算圆的面积。他采用一个有奇数边的正多边形来外切圆,并用一个有偶数边的正…