support bazel complie this project and format code.

This commit is contained in:
zhangxing
2023-03-30 00:15:11 +08:00
committed by light-city
parent 1f86192576
commit 7529ae3a55
636 changed files with 10025 additions and 9387 deletions

View File

@@ -0,0 +1,13 @@
# please run `bazel run basic_content/c_poly:c_examp`
# please run `bazel run basic_content/c_poly:c++_examp`
load("@rules_cc//cc:defs.bzl", "cc_binary")
cc_binary(
name = "c_examp",
srcs = ["c_examp.c"],
)
cc_binary(
name = "c++_examp",
srcs = ["c++_examp.cpp"],
)

Binary file not shown.

View File

@@ -9,34 +9,31 @@
#include <iostream>
using namespace std;
class A
{
public:
virtual void f()//虚函数实现
{
cout << "Base A::f() " << endl;
}
class A {
public:
virtual void f() //虚函数实现
{
cout << "Base A::f() " << endl;
}
};
class B:public A // 必须为共有继承否则后面调用不到class默认为私有继承
class B : public A // 必须为共有继承否则后面调用不到class默认为私有继承
{
public:
virtual void f()//虚函数实现,子类中virtual关键字可以没有
{
cout << "Derived B::f() " << endl;
}
public:
virtual void f() //虚函数实现,子类中virtual关键字可以没有
{
cout << "Derived B::f() " << endl;
}
};
int main() {
A a; //基类对象
B b; //派生类对象
int main()
{
A a;//基类对象
B b;//派生类对象
A *pa = &a; //父类指针指向父类对象
pa->f(); //调用父类的函数
A* pa = &a;//父类指针指向类对象
pa->f();//调用父类的函数
pa = &b; //父类指针指向子类对象,多态实现
pa->f();//调用派生类同名函数
return 0;
pa = &b; //父类指针指向类对象,多态实现
pa->f(); //调用派生类同名函数
return 0;
}

Binary file not shown.