首页 > 解决方案 > 什么是 C/C++ 编程中的“OpType”

问题描述

在程序中,有很多OpType opType作为函数的输入,但没有定义/声明OpType opType. 因此,程序遇到了错误:‘OpType’ has not been declared.

此外,还有一个如下的 switch-case ,也就是 get error: was not declared in this scope

switch (opType)
      {
      case OPTYPE_RET_UNCOND:
      case OPTYPE_JMP_INDIRECT_UNCOND:
      case OPTYPE_JMP_INDIRECT_COND:
      case OPTYPE_CALL_INDIRECT_UNCOND:
      case OPTYPE_CALL_INDIRECT_COND:
      case OPTYPE_RET_COND:
    brtype = 2;
    break;
      case OPTYPE_JMP_DIRECT_COND:
      case OPTYPE_CALL_DIRECT_COND:
      case OPTYPE_JMP_DIRECT_UNCOND:
      case OPTYPE_CALL_DIRECT_UNCOND:
    brtype = 0;
    break;
      default:
    exit (1);
      }
    switch (opType)
      {
      case OPTYPE_JMP_DIRECT_COND:
      case OPTYPE_CALL_DIRECT_COND:
      case OPTYPE_JMP_INDIRECT_COND:
      case OPTYPE_CALL_INDIRECT_COND:
      case OPTYPE_RET_COND:
    brtype += 1;
    break;

标签: c++

解决方案


在 C 和 C++ 语言中都没有“OpType”这样的东西。它是一个可以由程序声明的名称。如果程序声明了这样的名称,则其含义取决于该声明。如果未声明此类名称,则无法使用该名称。

如果您尝试使用未声明的标识符,您将收到错误,例如您引用的错误。解决方案是不使用名称,或者以与您使用名称的方式兼容的方式声明名称。


推荐阅读