网站备案号添加,可以用来注册网站域名的入口是,广州有哪些广告公司,搜索引擎竞价广告目录
命名空间
静态成员
#xff08;1#xff09;静态数据成员
#xff08;2#xff09;静态成员函数
1 myclass.h
2 myclass.cpp
3 test.h
4 test.cpp
5 main.cpp 命名空间 命名空间#xff08;namespace#xff09;是许多编程语言使用的一种代码组织的形式。…目录
命名空间
静态成员
1静态数据成员
2静态成员函数
1 myclass.h
2 myclass.cpp
3 test.h
4 test.cpp
5 main.cpp 命名空间 命名空间namespace是许多编程语言使用的一种代码组织的形式。 它实际上就是一个由程序设计者命名的内存区域程序设计者可以根据需要指定一些有名字的空间域把一些全局实体分别放在各个命名空间中从而与其他全局实体分隔开来。 命名空间的作用主要是建立一些互相分隔的作用域以分类和区别不同的代码功能避免不同的代码片段通常由不同的人协同工作或调用已有的代码片段同时使用时由于不同代码间变量名相同而造成冲突。
静态成员 静态成员是C以及其他一些面向对象编程语言中的一个概念它属于类本身而不是类的任何特定对象。静态成员可以是数据成员即变量或成员函数即方法。静态成员在类的所有对象之间共享并且不依赖于任何特定的对象实例。
1静态数据成员 静态数据成员是类的所有对象共享的变量。这意味着无论创建多少个对象都只有一个静态数据成员的副本。静态数据成员通常在类的外部进行初始化。
2静态成员函数 静态成员函数是只能访问静态数据成员和其他静态成员函数的类成员函数。它们不能访问类的非静态数据成员因为非静态数据成员需要具体的对象实例来引用。静态成员函数可以通过类名或对象名来调用但通常使用类名来调用因为它们不依赖于任何对象实例。 1 myclass.h
#ifndef MYCLASS_H
#define MYCLASS_Hnamespace MyNamespace {class MyClass {public:MyClass();void myFunction();};}#endif // MYCLASS_H2 myclass.cpp
#include MyClass.h
#include iostream
#include QDebug
using namespace std;namespace MyNamespace {MyNamespace::MyClass::MyClass()
{}void MyNamespace::MyClass::myFunction()
{qDebug()MyClass::myFunction;
}}3 test.h
#ifndef TEST_H
#define TEST_H
#include QDebug
namespace MyNamespace {class test{public:test();static int a;static void static_test_fun();void no_static_fun();};}#endif // TEST_H4 test.cpp
#include test.hnamespace MyNamespace {
// 在类外部定义和初始化静态成员变量
int test::a 0;test::test()
{}
// 静态成员函数的定义
void test::static_test_fun()
{a;qDebug()static_test_fun a:a;
}void test::no_static_fun()
{qDebug()no_static_fun;
}}5 main.cpp
#include MyClass.h
#include test.h
using namespace MyNamespace;
int main() {MyClass mMyClass;mMyClass.myFunction();test::static_test_fun();test::static_test_fun();return 0;
}