- 博客(7)
- 收藏
- 关注
原创 openwrt环境 c++程序异常循环执行问题
在移植网关程序到openwrt的时候 发现程序会异常执行,单次执行的步骤莫名奇妙进行循环执行。后发现是因为有些设置了返回类型的函数没有进行return。openwrt的编译器优化会出问题。平常没有加返回值编译器会自动优化。如 int func(){加上返回值后程序正常运行。如int func(){
2024-04-24 09:08:07
494
1
原创 visual studio连接不上github解决方法
但直接使用visual studio 2002克隆代码库时提示连接错误。网页浏览github速度很慢。工具:visual studio 2022。5,完成 vs成功克隆github项目。1,进入网络和internet->代理。3,记住端口号,大部分都是7890。平台:windows11。2,编辑手动代理设置。
2023-10-31 17:37:08
1209
1
原创 unable to read file VSCODE打开文件报错问题
写了个简单程序 打开两个文件 读一个文件内容 写到另一个文件中 很简单的代码 运行结束后确打不开复制的文件 报错如图。环境 win11 Vscode远程连接WSL2 ubuntu系统。然后用命令行cat文件提示无权限 发现复制的文件权限为空。
2023-09-25 20:05:47
556
1
原创 资源管理:条款13-17
注:书本发行时间较早,在C11中标准库引入了智能指针unique_ptr、shared_ptr和weak_ptr。auto_ptr被摒弃,被unique_ptr取代,unique_ptr更安全。- 如果你在new表达式中使用[ ],必须在相应的delete表达式中也使用[ ]。不过其他行为也都可能被实现。- 以独立语句将newed对象存储于(置入)智能指针内,如果不这样做,一旦异常被抛出,有可能导致难以察觉的资源泄露。- 为防止资源泄露,请使用RAII对象,它们在构造函数中获得资源并在析构函数中释放资源。
2023-06-17 10:16:54
49
1
原创 构造/析构/赋值运算:条款05-12
Classes的设计目的如果不是作为base classes使用,或不是为了具备多态性(polymorphically),就不应该声明virtual析构函数。- 编译器可以暗自为class创建***default***构造函数、***copy***、copy ***assignment***操作符,以及析构函数。- 如果客户需要对某个操作函数运行期间抛出的异常做出反应,那么class应该提供一个普通函数(而非在析构函数中)执行该操作。1,virtual析构函数让父类可以调用子类析构原理是虚函数表;
2023-06-02 07:24:38
48
原创 条款04:确定对象被使用前已被初始化
1,一个classes拥有多个构造函数,成员初值列不相同时,合理地在初值列中遗漏那些“赋值表现像初始化一样好”的成员变量,改用他们的赋值操作,并将这些赋值操作移往某个函数(如Init,通常是private)。
2023-05-31 19:41:51
67
1
原创 条款03-尽可能使用const
/iter的作用像个T。const int * pint //pint指向的值是常量 不能更改,但pint可以更改指向。首先理解一下关键字const的用法,这是一个约束词,约定“不能被改动”。4,const作用于成员函数,确认该成员函数可作用域const对象身上。2,STL迭代器可以看做一个T*指针 ,可以用const声明(T。3,const用于函数返回值时,可以降低用户错误而造成的意外。int const* pint// 和const int。const pint //指针是常量 不能指向其他int。
2023-05-31 19:34:31
60
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人