小编use*_*518的帖子

错误:deque迭代器不可解除引用

我正在尝试创建一个程序,将算术表达式从中缀转换为后缀形式.只要我不调用"infixToPostFix"函数,该程序运行正常.但是当我尝试运行以下代码时,我遇到了崩溃和错误"deque iterator not dereferenceable".我找不到任何解除引用的运算符,所以我不确定是什么问题:

// infixToPostfixTest.cpp

#include "Token.h"
#include <iostream>
#include <vector>
#include <stack>
using namespace std;

// infix to postfix function prototype

void infixToPostfix(vector<Token> &infix, vector<Token> &postfix);

// priority function prototype
int priority(Token & t);

// printing a Token vector
void printTokenVector(vector<Token> & tvec);

int main() {

  // Experiment
  //--------------------------------------------------
  vector<Token> infix;

  // a + b * c - d / e % f
  //
  infix.push_back(Token(VALUE,5.0));   // a
  infix.push_back(Token(OPERATOR,'+'));
  infix.push_back(Token(VALUE,6.0));   // b
  infix.push_back(Token(OPERATOR,'*'));
  infix.push_back(Token(VALUE,7.0));   // c

  cout << "Infix …
Run Code Online (Sandbox Code Playgroud)

c++ stack

3
推荐指数
1
解决办法
2万
查看次数

从std :: string转换为NSString

在这种情况下,如何将std :: string转换为NSString?

void Piles::imagePlacer(Card card, int xCoord, int yCoord) {
    string cardType = card.toString();

    UIImageView *cardImg = [[UIImageView alloc]
                 initWithImage:cardType];
    cardImg.frame = CGRectMake(xCoord, yCoord, 126, 190);
    [self.view addSubview:cardImg];
}
Run Code Online (Sandbox Code Playgroud)

我想使用一个字符串作为图像的名称(假设我有一个UIImages列表,其名称对应于存储在cardType中的所有可能的字符串)?

objective-c objective-c++

2
推荐指数
1
解决办法
3824
查看次数

使用虚函数和重新定义之间的区别

重新定义和使用虚拟功能有什么区别?他们不是为了同一个目的吗?您允许派生类的对象在两种情况下都使用相同的名称调用自己的函数版本.那么区别在哪里?

c++

2
推荐指数
1
解决办法
2644
查看次数

标签 统计

c++ ×2

objective-c ×1

objective-c++ ×1

stack ×1