我遇到了一个关于编写代码以确定C++中未使用函数的问题。我们可以使用不同的数据结构来确定未使用的函数。但在此之前,我们需要解析代码。我有关于解析部分的问题,我们如何区分函数声明和定义以及函数调用?确定函数声明,定义和调用
一样,
//function declaration without argument
fun1();
//function definition
fun1() {
// code goes here
}
main() {
fun1();
}
上面的声明和调用看起来相同的地方定义部分是从申报和呼叫有点不同。
除了上面的场景外,还有多种调用函数和函数作用域的场景,比如两个函数具有相同名称的类一个函数在成员函数中调用(即不需要显式调用对象)或者使用对象调用函数,首先需要了解对象的类型以确定实际调用哪个函数。
解析如何有效地执行?在上述情况下需要多少分析?
我不是C++大师,但不要函数声明和定义表示返回值类型? – Adi 2012-07-16 09:33:37
@Adnan除非你认为'implicit int'没错。 @Sachin解析C++非常困难。我建议使用'libclang'来为你做解析,并用它做你的静态分析,而不是自己去做。这对模板来说非常困难。 – pmr 2012-07-16 09:35:00
谢谢@pmr,我应该更多地参与C++。 – Adi 2012-07-16 09:35:56