珠海企业建站程序,单机怎么做网站,怎样对一个网站做seo,郑州网站建设模板制作一、C常见关键词
1、auto
auto: 自动类型推断。它可以让编译器根据变量的初始值自动推断出变量的类型。例如#xff1a;
auto x 42; // x 的类型为 int
auto y 3.14; // y 的类型为 double2、decltype
decltype: 类型推断。它可以根据表达式的类型推断出一个类型。例如常见关键词
1、auto
auto: 自动类型推断。它可以让编译器根据变量的初始值自动推断出变量的类型。例如
auto x 42; // x 的类型为 int
auto y 3.14; // y 的类型为 double2、decltype
decltype: 类型推断。它可以根据表达式的类型推断出一个类型。例如
int x 0;
decltype(x) y 1; // y 的类型为 int3、try/catch
try/catch: 异常处理。它可以捕获并处理程序运行过程中抛出的异常。例如
try {// 可能抛出异常的代码
} catch (const std::exception e) {// 处理异常
}4、class
class: 类定义。它用于定义一个类类是 C 面向对象编程的基础。例如
class MyClass {
public:MyClass() { /* 构造函数 */ }~MyClass() { /* 析构函数 */ }
private:int myMember; // 类成员
};4、constexpr
constexpr: 常量表达式。它用于定义一个在编译时就能确定值的常量。例如
constexpr int x 42; // 编译时常量5、new/delete
new/delete: 动态内存分配和释放。它们用于在运行时动态分配和释放内存空间。例如
int* p new int; // 分配内存
*p 42;
delete p; // 释放内存6、const_cast
const_cast: 常量转换。它可以去除变量的 const 属性使其可以被修改。例如
const int x 0;
int* p const_castint*(x); // 去除 const 属性
*p 42; // 修改 x 的值7、static_cast/dynamic_cast/reinterpret_cast
static_cast/dynamic_cast/reinterpret_cast: 类型转换。它们分别用于静态类型转换动态类型转换和重新解释类型转换。例如
double x 3.14;
int y static_castint(x); // 静态类型转换class Base {};
class Derived : public Base {};
Base* b new Derived;
Derived* d dynamic_castDerived*(b); // 动态类型转换int x 42;
void* p x;
int* y reinterpret_castint*(p); // 重新解释类型转换8、explicit
explicit: 显式构造函数。它可以防止构造函数被隐式调用。例如
class MyClass {
public:explicit MyClass(int x) { /* 构造函数 */ }
};MyClass m1(42); // 正确
MyClass m2 42; // 错误不能隐式调用构造函数9、export
export: 模板导出。它用于导出模板定义使其能够在其他c文件中使用。
10、friend
friend: 友元。它可以让一个类或函数访问另一个类的私有成员。例如
class MyClass {friend void myFunction(MyClass m);
private:int myMember;
};void myFunction(MyClass m) {m.myMember 42; // 可以访问私有成员
}11、mutable
mutable: 可变成员。它可以让一个类的成员在 const 函数中被修改。例如
class MyClass {
public:void myFunction() const {myMember 42; // 可以在 const 函数中修改}
private:mutable int myMember;
};12、using/namespace
using/namespace: 命名空间。它们用于定义和使用命名空间避免命名冲突。例如
namespace MyNamespace {int myFunction() { /* 函数定义 */ }
}using namespace MyNamespace; // 使用命名空间
myFunction(); // 调用函数13、noexcept
noexcept: 不抛出异常。它指定一个函数不会抛出异常。例如
void myFunction() noexcept {// 不会抛出异常的代码
}14、nullptr
nullptr: 空指针。它是一种特殊的指针值表示空指针。例如
int* p nullptr; // 空指针15、operator
operator: 运算符重载。它用于重载类的运算符使其能够像内置类型一样使用运算符。例如
class MyClass {
public:MyClass operator(const MyClass other) const {// 运算符重载}
};MyClass m1, m2;
MyClass m3 m1 m2; // 使用重载的运算符16、private/public
private/public: 访问控制。它们分别表示类成员只能在类内部访问和类成员可以在任何地方访问。例如
class MyClass {
public:int myPublicMember; // 公有成员
private:int myPrivateMember; // 私有成员
};17、static_assert
static_assert: 静态断言。它用于在编译时检查条件是否为真如果不为真则编译失败。例如
static_assert(sizeof(int) 4, int must be 4 bytes); // 静态断言18、template
template: 模板定义。它用于定义模板实现泛型编程。例如
template typename T
T myMax(T x, T y) {return x y ? x : y;
}int x myMax(1, 2); // 调用模板函数
double y myMax(3.14, 2.71);二、结语
本篇目的是为巩固自身的C基础给自身回顾不保证完全正确若有错误敬请指正