关键字之标识符

C++新增标识符:
explicit:声明非隐式调用构造或拷贝构造函数
friend:声明友元类或者友元函数
inline:声明内联函数,会消耗内存但提高执行速度
private:声明私有继承或者私有成员
protected:声明受保护继承或者受保护成员
public:声明公有继承或者公有成员
virtual:声明虚继承或者是虚函数
this: 声明一种实体,仅在类的非静态成员中使用,是指向类的对象的指针右值

C++含义有改变标识符:
1.const:声明常成员变量或者常成员函数
2.static:声明静态成员

	const int i=10;
	//int *p=&i; //error

	//const-->const
	//非const-->const
	//const 不能-->非const 
	
	const int* ptr=&i;//1
	int *p2=(int*)&i;//2
	*p2=20;
	cout<<"i:"<<i<<endl;
	cout<<"*p2:"<<*p2<<endl;

	const int *p;//常量指针
	const *int p;//指针常量
	const *int const p;//指向常量的常量指针


class Point
{
public:
	Point() :
		value(10) //对于const成员变量,在类里面声明变量时就初始化或者使用初始化列表进行初始化。
	{
		value = 10;//其他函数里面初始化是不允许的。
	}
	
	void setX(const int x)
	{
		this->x=x;
	}
	int  getX() const //常成员函数
	{
		return x;	
	}
		
private:
	int x;
	const int value = 10;//对于const成员变量,在类里面声明变量时就初始化或者使用初始化列表进行初始化。
};
#include<iostream>
using namespace std;

class A
{
	public:
		A()
		{
			cout<<"A()"<<endl;
			count++;
		}
		~A()
		{
			cout<<"~A()"<<endl;
			count--;
		}

		void out()//非静态成员方法
		{
			cout<<"count:"<<count<<endl;//非静态成员方法可以引用静态成员
		}

		static int getCount() //静态成员方法
		{
			//cout<<x<<endl;//error,静态成员方法不能引用非静态成员
			return count;
		}

	private:
		int x;
		static int count;//静态成员变量声明,可以完全脱离对象而存在
};

//静态成员变量必须要初始化,并且要在类外初始化
int A::count; //默认为0

void main()
{	
	//A a1;
	//
	既然创建出了对象实例,count就不可能为0,矛盾 
	//if(a1.getCount() == 0)
	//{
	//
	//}

/*	//只有在count是public情况下使用	
	if(A::count == 0)
	{
		cout<<"count\n";
	}
*/

	if(0 == A::getCount())
	{
		cout << A::getCount << ", " << A::getCount();
	}

}

回答: 在C#中,关键字是编译器预先定义好的一些单词,也可以称为保留字或保留标识符。这些关键字对编译器有特殊的意义,不能用作标识符。C#共有77个关键字,如图1.5所示。\[2\] 而标识符是用来识别类、变量、函数或任何其他用户定义的项目的字符串。在C#中,标识符必须以字母、下划线或@开头,后面可以跟一系列的字母、数字、下划线。标识符中的第一个字符不能是数字,也不能包含任何嵌入的空格或符号。此外,标识符不能是C#关键字,除非它们有一个@前缀。标识符必须区分大小写,大写字母和小写字母被认为是不同的字母。\[1\] 在C#中,标识符的命名约定有以下几点:标识符只能包含字母(包括大小写)、数字、@符号以及下划线,首位不能为数字,也不能是C#关键字标识符的命名风格有三种:Pascal大小写,Camel大小写和下划线加Camel大小写。不同的命名风格适用于不同的情况,如图1.4所示。\[2\] 总结起来,关键字是编译器预先定义的单词,具有特殊意义,不能用作标识符。而标识符是用来识别类、变量、函数等用户定义的项目的字符串,有一定的命名约定和命名风格。\[2\]\[1\] #### 引用[.reference_title] - *1* [C#梳理【标识符关键字】](https://blog.csdn.net/qiaoquan3/article/details/77802118)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [【C#基础学习】第四章、标识符关键字](https://blog.csdn.net/Hoghst_debug/article/details/127944419)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [C#关键字标识符](https://blog.csdn.net/weixin_66598341/article/details/129649260)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值