我正在尝试定义/声明一个静态结构实例,但是在使用test.cc:3:1: error: ‘mine’ in ‘class MyClass’ does not name a type
进行编译时,我总是收到错误g++ -std=c++11 -g -Wall -c test.cc
这是我的代码的样子:
//test.h
#ifndef TEST_H
#define TEST_H
#include <stdint.h>
struct my_struct {
uint8_t foo;
uint8_t bar;
};
class MyClass {
public:
static const struct my_struct mine;
};
#endif
//test.cc
#include "test.h"
MyClass::mine = {1, 2};
答案 0 :(得分:0)
在C语言中,您需要使用struct StructName
声明一个对象。
但是在C ++中,struct
和class
都不需要声明。