gpt4 book ai didi

c# - 识别行计数程序中的 C# 或 C++ 函数开始

转载 作者:太空狗 更新时间:2023-10-29 21:30:41 25 4
gpt4 key购买 nike

我有一个用 C# 编写的程序,当给定一个 C++ 或 C# 文件时,它会计算文件中的行数,计算注释中和设计器生成的代码块中的行数。我想添加计算文件中有多少函数以及这些函数中有多少行的功能。我不太清楚如何确定一行(或一系列行)是否是函数(或方法)的开始。

至少,函数声明是一个返回类型,后跟标识符和一个参数列表。有没有办法在 C# 中确定 token 是有效的返回类型?如果不是,有什么办法可以轻松判断一行代码是否是一个函数的开始?基本上我需要能够可靠地区分类似的东西。

bool isThere() 
{
...
}

来自

bool isHere = isThere()

isThere()

以及任何其他类似的函数声明。

最佳答案

这样做的问题是要准确地做到这一点,您必须考虑定义 C# 函数的所有可能方式。本质上,您需要编写一个解析器。这样做超出了简单 SO 答案的范围。

这个问题可能有很多正则表达式形式的答案,它们适用于常见情况,但可能会在像下面这样的极端情况下爆炸

int
?
/* this
is */
main /* legal */ (code c) {
}

关于c# - 识别行计数程序中的 C# 或 C++ 函数开始,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2089340/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com