Я довольно ржавый в C ++, так что прости меня за любые глупые комментарии / вопросы. Сейчас я работаю в Microsoft Visual C ++ 2010 Express. У меня есть два файла — источник и заголовок — и VS распознает файл заголовка, когда я его включаю, но он не может найти никаких определений внутри файла заголовка. Он показывает мне «Ошибка: идентификатор« RAW_PACKET_SIZE »не определен». Код был предоставлен в качестве примера для работы с API устройства, поэтому он должен работать. Я предполагаю, что проблема с настройкой VS. Вот некоторые вводные коды формы каждого:
recorder.cpp
#include <vector>
#include "APIW32.h"#pragma comment(lib,"APIW32.lib")
int devID;
float* buf = new float[RAW_PACKET_SIZE]; // error is here, at 'RAW_PACKET_SIZE'
APIW32.h
#pragma once
#ifdef EXPORTS
#define API __declspec(dllexport)
#else
#define API __declspec(dllimport)
#endif
#define MIN_BW 0.301003456
#define MAX_BW 10100000
#define RAW_PACKET_SIZE 299008
ОБНОВИТЬ:
Похоже, что ошибка появлялась только в Intellisense, а не как фактическая ошибка сборки. Мораль истории — Интеллисенс не всегда прав!
Пытаться float* buf = new float[RAW_PACKET_SIZE];
Других решений пока нет …