如何摆脱此错误:并非所有代码路径都返回值?

2024-01-02

int search(string [][]mat, int n, string x){
//set indexes for top right element
    for(int i = 0; i<n; i++)
    {
        for(int j = n-1; j>=0; j--)
        {
                     if ( mat[i][j] == x )
              {
                 Debug.Log(x +""+"Found at "+i +" "+j);
                // int[] n2 = new int[] {2, 4, 6, 8};
                // int [] xyz = new int [] {i, j};
                           return i;

              }

        }
    }}

如何摆脱此错误:并非所有代码路径都返回值?

Error: *Assets/Scripts/Chess/Bishop.cs(237,22):错误 CS0161:`Bishop.search(string[][], int, string)':并非所有代码路径都返回值*


弄清楚如果你找不到的话你想要发生什么x,并在方法结束时返回该值。例如:

// Fixed naming conventions and indentation...
// Why do we need n here at all? Why not just use the length of the array?
int Search(string[][] mat, int n, string x)
{
    //set indexes for top right element
    for (int i = 0; i < n; i++)
    {
        // Why are we looking backwards here?
        for (int j = n - 1; j >= 0; j--)
        {
            if (mat[i][j] == x)
            {
                // More readable formatting...
                Debug.Log(string.Format("{0} found at {1}, {2}", x, i, j));
                return i;   
            }   
        }
    }
    // Not found: return -1 to indicate failure. Or you could throw an exception
    return -1;
}

更一般地说:编译器错误消息在这里相当清楚 - 有一种方法可以让您在不返回任何内容的情况下到达方法的末尾。值得退后一步并尝试思考为什么你自己无法解决这个问题。您是否对编译器错误消息足够重视?您是否考虑过该方法在所有情况下可能执行的所有操作?下次你怎样才能更好地处理这个问题?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何摆脱此错误:并非所有代码路径都返回值? 的相关文章

随机推荐

  • Magento 2 - 未找到请求的组件(“0”)。使用前必须添加实现

    嗨 Magento 专家朋友们 最近我已将 magento 1 迁移到 Magento 2 2 1 0 版本 拥有9000种产品和20000个订单 我使用 Magento 迁移工具进行迁移 到目前为止 一切都很好 除了 未找到所请求的组件
  • roxygen2 如何不运行示例文件

    我很清楚当代码直接位于 roxygen 注释中时如何让 roxygen 不运行示例 但是 某些示例可能有点冗长 或者您希望将示例编译在示例目录中 在这种情况下 example file path工作正常 但我不知道如何让 roxygen 不
  • awk 用于日期范围日期格式,如 mm/dd/yyyy hh:mm:ss

    我有这样的日志文件我正在尝试检索日期范围 07 10 2013 01 31 54 SNMP 07 10 2013 01 31 54 SNMP 07 10 2013 03 03 54 SNMP 我正在使用下面的 awk 命令 它给出了所有行
  • Apache-POI 对 Excel 中的行进行排序

    我想按字符串列之一对工作表中的行进行排序 我尝试使用 Sheet shiftRows 方法来实现这一点 但我无法做到这一点 它不会在我的方法中切换行的位置 我的代码有什么问题吗 或者也许有更好的方法按 Excel 中的任何字符串列对行进行排
  • 自动高度 div 上的 Img 高度

    https jsfiddle net ry9gyb8n https jsfiddle net ry9gyb8n 大家好 几周以来我一直在尝试解决这个问题 我有一个自动高度容器 容器中的左侧 div 是自动高度 因为它里面可以有各种不同的内容
  • 如何将数字的后3位转换为0

    如何将数字的后3位转换为0 例如 3444678 到 3444000 我可以这样做 整数 3444678 1000 1000 3444000 但除法和乘法可能代价高昂 还有其他解决办法吗 你可以尝试 n n 1000 但模运算符可能与除法一
  • NewtonSoft Json DeserializeObject 空 Guid 字段

    我正在使用 ASP NET MVC C 和 HTML CSS jQuery KnockoutJs 前端 我的 HTML 页面上有一个模式联系表单 这个想法是 如果我创建一个新的联系人 模式表单会弹出空白值 包括空白的隐藏 ID 字段 如果我
  • cakephp、jquery、.ajax()、数据类型:json

    cakephp 控制器功能是否可以在没有视图的情况下完成 我试图让我的服务器返回一个不是字符串的数据类型 而是一个数组 我的控制器功能 function test this gt layout plain task Numbers uno
  • 如何垂直对齐多个表格列

    我有多个具有以下结构的表 table tr td year td tr tr td semester td td semester td tr tr td course type td td course td td course type
  • 在运行时检查宏是否已定义

    在开发静态库的过程中 遇到了测试库函数的需要 功能检查不是问题 主要问题是测试库提供的每个宏定义 我从这样的代码开始 For non vital macro OS WORDSIZE detections if defined BXI ARC
  • 在开始编码之前如何处理并发[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我正在编写 Java 程序 目前正在调试的并发问题比我想要处理的要多得多 我想问 你在设计程序时如何处理并发问题 就我而言 这是一个相
  • 处理多版本软件发布管理的最佳方法是什么?

    我的公司为房地产机构构建了一个 Web 应用程序 最初使用经典 ASP 进行编码 然后逐渐迁移到 NET 本质上 它是一个具有后端数据库的网站 与自定义 Windows 服务 DLL 混合 NET 应用程序的相当标准 在我过去的公司中 我们
  • JavaScript 和辅助功能

    作为一名网络开发人员 我从事的许多项目都属于政府的保护范围 因此受到政府的监管508 无障碍 http www section508 gov 法律 有时W3C 可访问性 http www w3 org TR WCAG 指导方针 在满足这些要
  • SkipListener 中未调用 @OnSkipInWrite

    我正在读取 csv 文件并使用 Spring Batch 将数据插入数据库 读取 处理和写入 我在 itemWriter 类中使用 jpaRepository save 将数据保存到数据库中 我试图在 OnSkipInWrite 方法中捕获
  • 使用 java.util.logging 进行 Commons 日志记录

    我正在尝试使用公共日志记录并希望使用 java util logging 作为底层机制 日志测试 java import org apache commons logging public class LogTest public stat
  • 仅对基于 servlet 的 web 应用程序中的某些页面使用 HTTPS

    我有一个基于 servlet 的 web 应用程序在 Tomcat 6 服务器上运行 URL 方案是 HTTPS 整个站点当前通过 HTTPS 提供服务 但我真正想做的是仅为某些操作 例如购买和登录 设置 HTTPS Tomcat 中是否有
  • 如何在 React 中为 svg 图像添加颜色

    我有一个图标列表 我想将图标颜色更改为白色 默认情况下我的图标是黑色的 大家有什么建议吗 我通常使用 fill white 在我的 css 中 但现在我在 React 中执行此操作 它不起作用 import React from react
  • writeRaster 输出文件大小

    我有一个函数 可以将多波段图像作为栅格砖对象读取 遍历波段进行各种计算 然后将栅格写出作为新的 tif 所有这些都工作正常 但新图像文件的文件大小大约是原来的四倍 我假设是因为原始图像有 4 个波段 我想知道 writeRaster 函数中
  • 如何在 Eclipse 中配置 Java -D 标志

    例如 java Dcom siebel management jmxapi cfgFileName C monitor 1srvr xml Component 在哪里 在 Eclipse 中 使用名称和值配置 D 标志 Component是
  • 如何摆脱此错误:并非所有代码路径都返回值?

    int search string mat int n string x set indexes for top right element for int i 0 i