【英国留学计算专业一直是一个热门专业,起薪都比其他专业的毕业生都要高,发展前景也很好~】
计算机专业:
(一)计算机科学
Advanced Programming 高级编程
Object-Oriented Programming and Software Design 面向对象的编程与软件设计
Robotics and Intelligent Systems 机器人与智能系统
Computer Vision and Embedded Systems 计算机视图与嵌入式系统
Building Secure Networks 安全网络构建
Wireless Networks 无线网络
#英国留学#
计算机专业:
(一)计算机科学
Advanced Programming 高级编程
Object-Oriented Programming and Software Design 面向对象的编程与软件设计
Robotics and Intelligent Systems 机器人与智能系统
Computer Vision and Embedded Systems 计算机视图与嵌入式系统
Building Secure Networks 安全网络构建
Wireless Networks 无线网络
#英国留学#
【软件编程:C++的异常处理?这个地方是一场噩梦】
C++的异常处理就会变成一场噩梦。由于C++解耦了异常的发生与处理,因此错误处理非常容易,但也造成了你几乎不可能保证程序永远不会运行未定义的行为。
在C语言中,错误的产生和处理是紧密结合的,在同一块源代码中。因此,在出错时很容易理解发生了什么:
int rc = fx ();
if (rc != 0)
handle_error ();
而在C++中,你只能抛出错误,却不清楚究竟发生了什么:
int rc = fx ();
if (rc != 0)
throw std::exception ();
问题在于,你并不清楚在哪里处理异常。
…………
考虑到上述问题,我决定使用C++,但不使用异常。如今我的这个项目就是这样实现的。
但是,对象初始化会异常。
此外,即使初始化没有问题,对象的销毁也绝对会遇到问题。你不能在析构函数中抛出异常。这可不是我强加的人为限制,而是因为如果在进程中调用析构函数,或者恢复栈时恰好抛出异常,就会导致整个进程崩溃。
综上所述,我认为,如果你的需求是不允许出现未定义的行为,则不适合面向对象的编程。这个问题不仅限于C++,任何具有构造函数和析构函数的面向对象语言都不适合。
https://t.cn/A6SXwSz3
namo-amitabhaya!
C++的异常处理就会变成一场噩梦。由于C++解耦了异常的发生与处理,因此错误处理非常容易,但也造成了你几乎不可能保证程序永远不会运行未定义的行为。
在C语言中,错误的产生和处理是紧密结合的,在同一块源代码中。因此,在出错时很容易理解发生了什么:
int rc = fx ();
if (rc != 0)
handle_error ();
而在C++中,你只能抛出错误,却不清楚究竟发生了什么:
int rc = fx ();
if (rc != 0)
throw std::exception ();
问题在于,你并不清楚在哪里处理异常。
…………
考虑到上述问题,我决定使用C++,但不使用异常。如今我的这个项目就是这样实现的。
但是,对象初始化会异常。
此外,即使初始化没有问题,对象的销毁也绝对会遇到问题。你不能在析构函数中抛出异常。这可不是我强加的人为限制,而是因为如果在进程中调用析构函数,或者恢复栈时恰好抛出异常,就会导致整个进程崩溃。
综上所述,我认为,如果你的需求是不允许出现未定义的行为,则不适合面向对象的编程。这个问题不仅限于C++,任何具有构造函数和析构函数的面向对象语言都不适合。
https://t.cn/A6SXwSz3
namo-amitabhaya!
#新版红绿灯# 这跟人教版插画设计真的是异曲同工,真的想骂人,旧版红绿灯不好吗?红灯停绿灯行。你自己看看你设计的这个破玩意,第2、第8个组合谁看了不说一句迷糊??明明很简单的事情非要复杂化,我就过个红绿灯你还让咱搞科研呢??像我们这种年轻人花了三四个小时才勉强研究明白这破玩意,那对于老人、小孩以及从农村里边外出务工的农民工来说,他们怎么办??设置红绿灯,目的是规范交通,畅通通行,面向对象是普通大众,应简单易懂,切实可行。如果背离了此目的只能说明设计者要么愚蠢,要么目的不纯!!![打脸][打脸][打脸]
✋热门推荐