Visual C# 2010入门到精通:C#与Visual Studio实战指南

5星 · 超过95%的资源 需积分: 5 3 下载量 150 浏览量 更新于2024-07-23 收藏 4.79MB PDF 举报
"Visual.C_2010从入门到精通]中文.pdf" 是一本针对初学者和有经验的C#程序员编写的教程书籍,由美籍作者John Sharp所著,周靖翻译。本书的核心内容围绕Visual C# 2010展开,这是Microsoft公司基于.NET Framework的C#语言实现的集成开发环境(IDE)——Visual Studio的一部分。C#被设计为一种简洁、功能强大且类型安全的面向对象编程语言,其目标是简化.NET Framework上的应用程序开发。 书中强调了学习者首先需要下载配套的代码包,可以从作者提供的网盘链接获取,找到名为"VisualC#2010从入门到精通VisualC#2010StepbyStep"的目录,并下载名为"Steup.exe"的文件。作者特别指出,虽然提供了翻译初稿,但全本图书和博主网站上会有更多详细信息、勘误反馈以及最新更新。 本书与市场上单纯罗列语法元素的书籍不同,它采用了循序渐进的教学方法,通过大量实际案例帮助读者理解和掌握C#语言的基础概念,如控制台应用程序、WPF窗体应用程序、数据库应用程序,甚至包括多线程编程和WCF Web服务等。所有这些内容都是在Visual Studio这个强大的工具支持下进行的,从而加速开发过程。 值得注意的是,本书是在前一版本《VisualC#2008从入门到精通》基础上进行修订和增补的,尤其突出了对C# 4.0新特性的介绍。对于新手来说,这本书提供了一个系统的学习路径,确保学习过程流畅无阻;而对于经验丰富的开发者,可以根据个人兴趣选择性阅读,进一步提升技能或了解新特性。 《Visual.C_2010从入门到精通]中文.pdf》是一本既适合初学者快速上手,又满足专业人士进阶需求的C#编程教程,通过实例驱动教学,让读者在实践中熟练掌握C#语言和Visual Studio的使用。"

#include "prepare_ogm.hpp" namespace senior { namespace guardian { namespace prepare { std::string PrepareOgm::Name() { return "Prepare Ogm Element"; } void PrepareOgm::Initiate() {} void PrepareOgm::Process(data::DataFrame& his, data::DataFrame& cur) { if (cur.source_ogm_points_.is_invalid()) return; if (cur.source_visual_ogm_points_.is_valid()) { cur.source_ogm_points_.insert(cur.source_ogm_points_.end(), cur.source_visual_ogm_points_.begin(), cur.source_visual_ogm_points_.end()); } if (cur.source_higher_ogm_points_.is_valid()) { cur.source_ogm_points_.insert(cur.source_ogm_points_.end(), cur.source_higher_ogm_points_.begin(), cur.source_higher_ogm_points_.end()); } auto& predict_path = cur.monitor_data_.mutable_predict_path(); predict_path.GenerateBoundary(cur); cur.AABox2d_ = predict_path.vehicle_AABox2d_; // if (!his.monitor_data_.is_need_to_take_over()) { // LOG(INFO)<<"1"; cur.AABox2d_.SetWidth(cur.AABox2d_.width() + 1.0); cur.AABox2d_.SetLength(cur.AABox2d_.length() + 1.0); // } std::vector<math::Vec2d> corner_points_; cur.AABox2d_.GetAllCorners(&corner_points_); auto& polygon2d = predict_path.tractor_polygon2d_; math::Vec2d temp; VoxelGrid filter_; common::Time now = common::Time::Now(); for (auto& point : cur.source_ogm_points_) { temp.set_x(point.x()); temp.set_y(-point.y()); if (cur.AABox2d_.IsPointIn(temp)) { cur.AABB_ogm_points_.emplace_back(point); } } cur.guardian_diagnose_["Prepare_PrepareOgm_AABox_filter"] = std::to_string((common::Time::Now() - now).ToSecond() * 1000); now = common::Time::Now(); filter_.VoxelGrid_ApplyFilter( cur.AABB_ogm_points_, cur.ogm_points_, corner_points_, 0.1, 0.1, 0); cur.guardian_diagnose_["Prepare_PrepareOgm_VoxelGrid_ApplyFilter"] = std::to_string((common::Time::Now() - now).ToSecond() * 1000); cur.ogm_points_.set_stamp(cur.source_ogm_points_.stamp()); cur.ogm_points_.set_time(cur.source_ogm_points_.time()); cur.ogm_points_.set_delay_time(cur.source_ogm_points_.delay_time()); cur.ogm_points_.set_valid(); } } // namespace prepare } // namespace guardian } // namespace senior 改变为C语言程序

2023-06-13 上传