最近一直在搞读c++文件生成函数名列表的方法

[a-zA-Z_](\S*?)(\s*?)[a-zA-Z_](\S*?)(\s*?)\(.*?\)(.*?)(\{|;)

解释一下
数据类型,空白或换行,函数名,空白或换行,(,任意字符,),空白或换行,以;或{结束。

[a-zA-Z_](\S*?)

就是说以小写、大写或下划线开头的字符串

倒数的

(.*?)

就是为了防止如
func()const;
这样定义的东西