struct

struct

c中的struct内不能有函数,不能继承,如果名字和函数名冲突可以正常调用。

c++中的struct中可以定义函数,可以使用访问修饰,可以直接不带struct关键词使用。

若结构体的名字与函数名相同,可以正常运行且正常的调用,但是定义结构体变量时候只能用带struct的。

比如继承:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include<iostream>
#include<stdio.h>
struct Base {
int v1;
// private: //error!
int v3;
public: //显示声明public
int v2;
virtual void print(){
printf("%s\n","Base");
};
};
struct Derived:Base {

public:
int v2;
void print(){
printf("%s\n","Derived");
};
};
int main() {
Base *b=new Derived();
b->print();
return 0;
}
  • Copyrights © 2018-2022 Haojia Zhu
  • Visitors: | Views:

请我喝杯咖啡吧~

支付宝
微信