royqh1979 / RedPanda-CPP

A light-weight C/C++ IDE based on Qt
GNU General Public License v3.0
938 stars 102 forks source link

编辑器的形参提示在去除模板形参后,得到的类型名和形参变量名之间没有空格 #376

Closed West-Pavilion closed 4 months ago

West-Pavilion commented 4 months ago

编辑器的形参提示在去除模板形参后,得到的类型名和形参变量名之间没有空格

请考虑如下的 C++ 代码:

#include <iostream>
#include <vector>
#include <queue>

/* 编辑器的形参提示在去除模板形参后,得到的类型名和形参变量名之间没有空格 */

/* 如下所示的函数,编辑器在提示其形参时,会把类型显示为 std::vectorv
 * 和 std::queueq */
void judge(std::vector<int> v = {5},std::queue<int> q = {}){
    std::cout << v.front() << std::endl;
}

/* 普通形参的形参提示的类型名和形参变量名之间有空格隔开 */
void check(int p = 5,std::string s = "default_string"){
    std::cout << s << std::endl;
}

int main(){
    judge();
    check();
}

屏幕截图(355) 如上图所示,std::vector v 被显示为 std::vectorv,这可能会影响使用模板作为函数形参时的编程体验

屏幕截图(357)

下面是对应的测试代码:

编辑器的形参提示在去除模板形参后,得到的类型名和形参变量名之间没有空格.zip

West-Pavilion commented 4 months ago

此 issue 已在最新版(3.0.2691)的 小熊猫C++ 中处理,即将关闭此 issue