static declaration of 'uart_init' follows non-static declaration
时间: 2023-11-09 19:08:00 浏览: 262
这个错误表示在代码中先有一个非静态(non-static)的函数声明,后面又有一个同名的静态(static)函数声明。在 C 语言中,同名的函数只能有一个定义,而这两个声明是不一致的,编译器就无法确定该使用哪个函数定义,从而报错。
解决方法是将其中一个函数的声明更改为与另一个函数相同的类型。如果需要同时使用两个同名的函数,则可以将其中一个函数重命名或者改变其参数类型或数量,以避免冲突。
相关问题
static declaration of '_rst_vaule' follows non-static declaration
在C++编程中,遇到 "static declaration of '_rstVaule' follows non-static declaration" 这样的错误,意味着你在声明一个静态成员变量 `_rstValue` 之前先声明了一个非静态的同名变量。静态成员变量是在类级别定义的,生命周期从程序开始到结束,每个实例只有一个副本;而非静态成员变量则是每个类实例单独拥有的。
例如:
```cpp
// 错误的代码示例
class MyClass {
public:
// 非静态成员变量
int _rstValue; // 先于 static _rstValue 定义
// 静态成员变量
static int _rstValue; // 后面跟着非静态的声明
};
// 正确的做法应该是这样的
class MyClass {
public:
// 静态成员变量
static int _rstValue;
// 可选的非静态成员变量,放在 static 声明之后
int _rstValue;
};
```
正确的顺序是先声明静态成员,然后如果有需要,再声明非静态成员。确保所有静态成员都在类体内部,并且按需放置即可避免此类错误。
static declaration of 'ntfSet' follows non-static declaration
这个错误信息"static declaration of 'ntfSet' follows non-static declaration"通常出现在C++语言中,当你试图声明一个静态成员函数(static function)但它的前面已经有一个非静态成员函数(non-static function)同名的情况下。静态成员函数属于类本身,并不属于类的任何一个实例,所以它们需要在类定义里单独声明,而不是在非静态成员之后。
例如:
```cpp
class MyClass {
public:
// 这是一个非静态函数
void ntfSet() {}
// 静态成员函数应该在这里单独声明
static void ntfSet(); // 这行会引发错误,因为静态函数应在非静态函数之前
};
```
为了修复此错误,你需要将静态成员函数移动到非静态函数之上:
```cpp
class MyClass {
public:
// 静态成员函数
static void ntfSet();
// 这是一个非静态函数
void ntfSet() {}
};
```
阅读全文
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20241231044930.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)