// C++测试文件
// 这是一个示例C++程序,用于测试语法高亮功能

#include 
#include 
#include 
#include 
#include 
#include 

using namespace std;

class ExampleClass {
private:
    string name;
    chrono::system_clock::time_point created_at;
    
public:
    ExampleClass(string name) : name(name) {
        created_at = chrono::system_clock::now();
    }
    
    void say_hello() const {
        cout << "Hello, " << name << "! This is a C++ example." << endl;
        time_t created_time = chrono::system_clock::to_time_t(created_at);
        cout << "Created at: " << ctime(&created_time);
    }
    
    static vector generate_numbers(int count) {
        vector numbers;
        for (int i = 0; i < count; i++) {
            numbers.push_back(i * 2);
        }
        return numbers;
    }
};

int main(int argc, char* argv[]) {
    string name = "World";
    if (argc > 1) {
        name = argv[1];
    }
    
    ExampleClass example(name);
    example.say_hello();
    
    // 演示STL容器
    map scores = {
        {"Alice", 95},
        {"Bob", 87},
        {"Charlie", 92}
    };
    
    cout << "\nScores:" << endl;
    for (const auto& pair : scores) {
        cout << pair.first << ": " << pair.second << endl;
    }
    
    // 演示算法
    vector numbers = ExampleClass::generate_numbers(5);
    reverse(numbers.begin(), numbers.end());
    
    cout << "\nReversed numbers: ";
    for (int num : numbers) {
        cout << num << " ";
    }
    cout << endl;
    
    return 0;
}