- 博客(4)
- 收藏
- 关注
原创 关于类变量的初始化(常对象,常函数,以及编译器优化问题)
常对象只能调用常函数,常函数里也只能调用常函数而对于非const成员变量上述二者都是可以调用的(只是不能改变这些成员变量的值)。特别注意常函数里不一定全是常数据变量,不加const确实是常数据,但加上mutable可以使它的值可以被改变。而且一旦用const修饰对象,编译器不会帮你调用默认构造函数了!!!!(甚至vscode都不会帮你),因为用const修饰后,任何编译器都不会帮你调用默认的构造函数。因此这个时候如果你根本不写构造函数,那变量都没有被初始化,样那是用不了的,编译器会报错。解决
2022-04-10 20:19:30
593
原创 拷贝构造函数调用原理
#include <iostream>using namespace std;class person {public: person() { ; } person add(person p) { this->age += p.age; return *this; } int age; person(const person& p) { cout << "copy\n"; age = p.age; } ~per.
2022-04-03 20:28:57
354
原创 关于vscode配置C/C++的配置文件问题
c_cpp_properties.json{ "configurations": [ { "name": "Win32", "includePath": [ "${workspaceFolder}/**" ], "defines": [ "_DEBUG", "UNICODE",
2022-02-05 15:54:49
1852
原创 关于const char *和char *的转化问题
对于同一个地址的操作,可以将变量常量化,但不可以将常量变量化,否则会报错。1.执行const char*=char*后,使用变量指针可以对指向数据进行修改,而使用常量指针则不可以修改其指向的数据。2.char*=const char*是不被允许的,因为指向的数据不可能通过这样的赋值实现变量化。注意:c++中的引用也是如此,引用的本质是指针。int &n=const int i,显然不对const int i可以视作常数1,2,3之类具体的数,而引用是对变量的引用,起一个别名。所以co
2022-01-16 12:41:15
3491
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人