1

Visual Micro を使用して Visual Studio 内にプロジェクトを作成しました。この問題を理解できません。私はこの TestClass.h ファイルを持っています

#pragma once

#include <map>
#include "Arduino.h"

class TestClass
{
private:
    std::map<unsigned,unsigned> umm;
    std::map<int,int> mmm;
public:
    TestClass(void);
    ~TestClass(void);
};

このコードでは、次のエラーが発生します。

> Compiling 'testPrj' for 'Arduino Uno' TestClass.cpp : In file included
> from TestClass.h : ISO C++ forbids declaration of 'map' with no type
> TestClass.h : ' TestClass.h : expected ';' before '<' token
> TestClass.h : ISO C++ forbids declaration of 'map' with no type
> TestClass.h : ' TestClass.h : expected ';' before '<' token Error
> compiling

私は何を間違っていますか?

4

1 に答える 1

0

Arduino はデフォルトで STL をサポートしていないため、STL データ構造を使用することはできません。

ツェルブが指摘するように。AVR の STL の実装があります (インストール手順)。使っていないので良し悪しはわかりません。

于 2013-07-31T17:13:49.820 に答える