Skip to main content
Glama
refactor_suggestion.py2.85 kB
""" C++ 代码重构建议提示模板 """ class RefactorSuggestionPrompt: """代码重构建议提示生成器""" # C++ 标准特性定义 STANDARD_FEATURES = { "cpp11": [ "auto 类型推导", "nullptr", "范围 for 循环", "智能指针 (unique_ptr, shared_ptr)", "lambda 表达式", "右值引用和移动语义", ], "cpp14": [ "泛型 lambda", "返回值类型推导", "std::make_unique", "二进制字面量", ], "cpp17": [ "结构化绑定", "if/switch 初始化语句", "constexpr if", "std::optional", "std::string_view", "折叠表达式", ], "cpp20": [ "Concepts (概念)", "Ranges (区间)", "Coroutines (协程)", "三路比较运算符 (<=>)", "指定初始化器", "std::span", ], "cpp23": [ "std::expected", "std::print", "if consteval", "多维下标运算符", "推导 this", ], } @staticmethod def generate(target_standard: str = "cpp17") -> str: """ 生成代码重构建议提示模板 参数: target_standard: 目标 C++ 标准 - cpp11: C++11 - cpp14: C++14 - cpp17: C++17 - cpp20: C++20 - cpp23: C++23 返回: 代码重构建议提示模板字符串 """ prompt = f"请将以下 C++ 代码重构为使用 {target_standard.upper()} 标准。\n\n" prompt += f"**可以使用的 {target_standard.upper()} 特性:**\n" # 包含目标及之前的所有标准特性 standards = ["cpp11", "cpp14", "cpp17", "cpp20", "cpp23"] target_index = standards.index(target_standard) for std in standards[:target_index + 1]: if std in RefactorSuggestionPrompt.STANDARD_FEATURES: prompt += f"\n{std.upper()} 特性:\n" for feature in RefactorSuggestionPrompt.STANDARD_FEATURES[std]: prompt += f" • {feature}\n" prompt += "\n**重构要求:**\n" prompt += "1. 使用现代 C++ 特性替代旧式写法\n" prompt += "2. 提高代码可读性和安全性\n" prompt += "3. 保持功能不变\n" prompt += "4. 解释每个重构点的理由\n" prompt += "5. 提供前后对比代码\n" return prompt def get_prompt() -> RefactorSuggestionPrompt: """获取代码重构建议提示生成器实例""" return RefactorSuggestionPrompt()

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/SongJiangzhou/cpp_guidelines_mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server