c++
文章平均质量分 55
宠宠熊
网络工程小萌新
展开
-
strtok函数和可重入函数strtrok_s、strtok_r的使用和注意事项
strtok函数的使用方法和注意事项,解决线程安全的可重入函数strtok_s、strtok_r函数原理。原创 2022-11-24 17:30:11 · 881 阅读 · 0 评论 -
C++构造函数详解|定义|构造步骤
1)作用:定义类对象时,自动调用当前类的构造函数,给类里面的数据成员开辟(栈)空间2)如果程序员没有定义构造函数,编译器会默认编写和自动调用构造函数(无参、无返回 类型)3)是一个特殊的成员函数,函数名和类名相同,无返回类型,可以带参数(意味着可以函数重载:构造函数只能有一个名字,如果想用几种不同的方法创建对象,只能重载)4)程序员如果定义带参的构造函数,最好带有默认值原创 2023-04-08 10:53:09 · 222 阅读 · 0 评论 -
static在C语言和C++中的区别 | 十分详细,一文彻底解决static
1)全局量被静态关键字修饰只在本文件中有效,仍存储在静态区,生命周期没变。2)函数被静态关键字修饰只在本文件中有效3)在函数中局部变量用静态关键字定义,生命周期存在于整个程序中,但变量只能在函数中访问,且此只能创建初始化一份4)static 修饰变量还有一特点,当变量未初始化时,默认初始化为 0。这是因为在静态存储区,所有内存都被默认置为 0,有时这一特点可减少工作量。原创 2023-07-26 23:59:32 · 257 阅读 · 0 评论 -
C++类中的this指针
静态成员函数不能定义成const常性:因为类中const修饰的是this指针,静态成员函数没有this指针全局函数也不能定义成const:全局函数也没有this指针。2.所有类对象公用成员函数方法,数据都是私有的,用this指针区分不同对象调用成员函数。总结:只有类的普通成员函数可以定义成const,核心在于看函数是否有this指针。友元函数也不能定义成const:友元函数也没有this指针。原创 2023-07-27 00:02:30 · 43 阅读 · 0 评论 -
C++的作用域
3)进入到块里创建y,块结束则销毁y (块域是局部加锁的重要工具,有时候希望锁住函数一部分而不是锁住函数的全部,则加上一个块域,如进入块域加锁退出块域解锁)类的成员名字在其所在的类作用域内、或者派生类作用域内可见,或者通过 .运算符、->运算符、::限定符访问。其内部声明的名字的作用域从首次声明之处至该块的结束之处。const 修饰的变量只能在本文件中使用,而要想在其它文件中使用,则必须显示的加上extern。在类的定义体内可见的所有成员和方法(包括普通成员普通函数和静态成员静态函数)都属于类域。原创 2023-07-28 23:19:38 · 124 阅读 · 0 评论 -
系统是怎么知道全局变量、局部静态变量或者局部静态对象只能被构建一次?
2.在多线程中,线程函数funa和funb都在调用GetObject()函数创建objx,当funa在读objx的标记值时,值为0则创建objx,与此同时funb线程也在读objx的标记值,此时值还未改变也是0,则objx可能会被创建两次。而静态对象objx被创建两次带来的问题是,线程funb会把线程funa初始化objx的值覆盖掉。因为此标记值是系统维护的,我们无法用互斥量对这个标记值进行保护,但是可以将线程进行加锁,在funa执行的时候给线程加锁,执行完了之后解锁,再去执行线程funb。原创 2023-07-28 23:16:31 · 71 阅读 · 0 评论 -
懒汉模式线程不安全的解决方法
懒汉模式存在线程不安全,解决方法是:加互斥锁加锁后保证了线程安全,对象仅被创建了一次(obja和objb是同一个地址,Object构造函数只调用一次),线程funa设置的value值未被覆盖。运行结果如下。原创 2023-07-28 23:11:00 · 198 阅读 · 0 评论 -
单例模式——懒汉、饿汉
1.单例模式:单例模式是指在整个系统生命周期内,保证一个类只能产生一个实例,确保该类的唯一性。(在内存中只会创建且仅创建一次对象的设计模式。)2.为什么要有单例模式?单例模式是为了保证程序的线程安全。什么是线程安全?在拥有共享数据的多条线程并行执行的程序中,线程安全的代码会通过同步机制保证各个线程都可以正常且正确的执行,不会出现数据污染等意外情况。如何保证线程安全?给共享的资源加把锁,保证每个资源变量每时每刻至多被一个线程占用。让线程也拥有资源,不用去共享进程中的资源。原创 2023-07-28 23:06:46 · 2702 阅读 · 0 评论 -
赋值运算符重载函数新解法,保证异常安全性(剑桥offer面试题)
赋值运算符重载函数新解法,保证异常安全性原创 2022-11-15 22:26:49 · 130 阅读 · 0 评论