【c++程序】静态函数

#include<iostream>
#include<string>
using namespace std;
class Sd
{
public:
	string name;
	static string teacher;
	static int room;
	Sd(const string & n):name(n){}
	void show(){cout<<"我是"<<name<<"在"<<room<<"听"<<teacher<<"老师讲课"<<endl;}
	static void newTeacher(const string &t){teacher=t;}
};
string Sd::teacher="陈";
int Sd::room=300;
int main()
{
	Sd s1("伯乐");
	Sd s2("哈哈");
	Sd s3("陈伟");
	s1.show();
	s2.show();
	s3.show();
	Sd::newTeacher("赵");//没有当前对象,没有this指针。
	s1.show();
	s2.show();
	s3.show();
}

时间: 2024-12-17 08:05:21

【c++程序】静态函数的相关文章

使用Olami SDK实现一个语音输入数字进行24点计算的iOS程序

前言 在目前的软件应用中,输入方式还是以文字输入方式为主,但是语音输入的方式目前应用的越来越广泛.这是一个利用 Olami SDK 编写的一个24点iOS程序,是通过语音进行输入. Olami SDK的介绍在下面这个网址 https://cn.olami.ai/wiki/?mp=sdk&content=sdk/ios/reference.html 在这个网址中详细的介绍了Olami SDK包含了那些函数和定义的委托. App实现 下面就通过24点这个程序来介绍一下如何使用这个SDK. 这个APP

java基础--JDK安装、环境变量配置、工具开发第一个程序、数据类型、运算符

**-----Java基础大纲-----**   **-----本章节-----** 1.Java语言的历史.特点及工作原理 2.JRE和JDK的介绍 3.Java运行环境和开发工具 4.Java基础语法 **-----下一章节-----** 5.条件语句 6.循环 7.数组 ============================================== 一:历史及开发准备 1.Java发展历程及来源 (1)发展历程 1996年1月,Sun公司发布了Java的第一个开发工具包(JD

黑马程序员——Java基础---多态、内部类、异常、包

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 一.多态 多态(Polymorphism)按字面的意思就是“多种状态”.在面向对象语言中,接口的多种不同的实现方式即为多态.引用Charlie Calverts对多态的描述——多态性是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作.简单的说,就是一句话:允许将子类类型的对象赋值给父类类型的引用. 猫这个对象对应的类

黑马程序员-集合框架(Map和Collections)

--Java培训.Android培训.iOS培训..Net培训.期待与您交流!--- 一.概述 Map是一种存储键值对的存储容器,而且保证键的唯一性.提供一种以"键"标识"值"的数据存储方式.接口形式为:Map<K,V>,其中K是此映射所维护的键的类型,V是映射值的类型.其有两个常用子类,HashMap和TreeMap,另有HashTable与HashMap功能类似,是早期版本.三者特点与不同如下: HashMap:JDK1.2版本出现,底层使用哈希表数

黑马程序员——java基础--多态

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 模板方法设计模式: 解决的办法:当功能内部一部分是现实确定,一部分是现实不确定的,这时间不可把不确定的部分暴漏出去,让子类实现. 实例:统计一个程序的的运行时间 思路:程序的结束时间减去程序的开始时间 abstract class Gettime{ public final void getTime(){//这段功能用final限制 long start = System.currentTim

Qt程序关于路径、用户目录路径、临时文件夹位置获取方法

比如我们有一个程序在: C:/Qt/examples/tools/regexp/regexp.exe 1. 程序所在目录 QString QCoreApplication::applicationDirPath() 那么 qApp->applicationDirPath() 的结果是: 输出:C:/Qt/examples/tools/regexp 2. 程序的完整名称.那么可以这么写: qApp->applicationFilePath() 输出:C:/Qt/examples/tools/re

指定Qt程序运行的style,比如fusion(以前没见过QStyleFactory)

转载请注明文章:指定Qt程序运行的style,比如fusion 出处:多客博图 代码很简单,如下: #include <QtWidgets/QApplication>   #include <QStyleFactory>      int main(int argc, char *argv[])   {       QApplication::setStyle(QStyleFactory::create("Fusion"));       QApplicatio

简述java程序中的main方法

简述main方法: 在java语言程序编写时都会涉及到一个main方法,它的格式为: public static void main(String[] args)(一般必须这么定义,这是java规范) 在这里修饰符public和static的顺序是可以互换的.但是根据java的惯例,一般把public放在前面,后面的参数名args是不固定的,开发者可以任意命名. 1) public关键字指可以其他类可以访问这个函数. 2) static 关键字指静态函数,调用时不会实例化(即不能创建对象)(静态

C++手动加载CLR运行托管程序(CLR Hosting)

转载自:http://www.linuxidc.com/Linux/2012-10/72293.htm 机制介绍 有些时候主程序是通过C/C++实现的,但是我们希望通过托管代码来扩展非托管程序,从而也获得托管代码带来的一系列优点.比如开发效率高,自动垃圾回收等. 运行托管与非托管代码根本区别在于托管代码是进程首先加载CLR然后通过CLR运行托管程序,而非托管代码则是操作系统直接根据其PE Header加载程序分配内存从而运行.因此如果需要通过托管代码来扩展非托管程序,首先要加载CLR来使非托管程