C++和Windows平台的一些书籍

从2010年学习编程以来,到现在有差不多3年时间了,过的真快啊。目前在深圳工作,主要使用的是C++语言,那么我就说说C++和Windows平台的书籍吧


1  C primer plus

《C Primer Plus 》(中文版)共17章,介绍了C语言的基础知识,包括数据类型、格式化输入输出、运算符、表达式、流程控制语句、函数、数组和指针、字符串操作、内存管理、位操作等,知识内容都针对C99标准;另外,《C Primer Plus 》强化了对指针的讨论,并引入了动态内存分配的概念,也讨论了C预处理器和C库函数、高级数据表示(数据结构)方面的内容。

豆瓣网和亚马逊都一致好评,学习C语言入门很好


C和指针

本书提供与C语言编程相关的全面资源和深入讨论。本书通过对指针的基础知识和高级特性的探讨,帮助程序员把指针的强大功能融入到自己的程序中去。

经典书籍,建议看看


C++ primer 中文版4

本书是久负盛名的C++经典教程,其内容是C++大师Stanley B. Lippman丰富的实践经验和C++标准委员会原负责人Josée Lajoie对C++标准深入理解的完美结合,已经帮助全球无数程序员学会了C++。本版对前一版进行了彻底的修订,内容经过了重新组织,更加入了C++ 先驱Barbara E. Moo在C++教学方面的真知灼见。既显著改善了可读性,又充分体现了C++语言的最新进展和当前的业界最佳实践。

这边书我看了2遍,每次都有新发现,学习C++必须要看的书籍啊,1000多页,很厚。

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 23
    评论
Forger 推荐的学习windows 编程的所有书籍都在这儿: windows 编程 windows MFC入门到精通 windows 高级编程 windows 网络编程 Programming Windows Programming Windows with MFC Programming Applications for Windows Network Programming for Microsoft Windows Programming Windows by Charles Petzold. The book to get on Win32 API. If you want to write programs using just the API (which is what this tutorial covers), you need this book. 如果你想只用windows API编程,这本书是入门经典,你需要这本书。 Programming Windows with MFC by Jeff Prosise. If you want to venture into MFC (AFTER becoming fully accustomed to using the Win32 API), this is the book for you. If you don't like MFC but intend on getting a job doing windows developement, get this anyway, it's better to know than not. 如果你想用MFC这本书是你想要的 Programming Applications for Windows by Jeffrey Richter. Not for newbies, if you want to be up on managing processes and threads, dlls, windows memory management, exception handling, and hooking into the system, then this is the book for you. 如果你想了解操作系统内幕,这本书是经典,书中包含了进程,线程,动态库,windows内存管理,异常处理。。。 Visual C++ Windows Shell Programming by Dino Esposito. For anyone interested in the visual and user-friendly aspects of windows, this book covers writing extentions to the windows shell, working efficiently with files and drag and drop, customizing the taskbar and windows explorer, and numerous other tricks. Well worthwhile for anyone writing GUI apps in windows. Network Programming for Microsoft Windows Up to date information on network programming, including NetBIOS, mailslots and pipes, and of course the ever important windows sockets, complete with winsock2 and raw sockets. Also contains specific information on the various windows platforms including 2000 and CE.
实现一个图书馆管理系统,需要以下几个步骤: 1. 确定系统功能:图书信息的录入、查询、删除、修改等基本操作,还需要实现借书和还书功能。同时,还需要实现管理员登录和普通用户登录功能。 2. 设计系统界面:可以使用Windows窗体应用程序进行设计,设计好系统的主界面和各个子界面。 3. 编写代码:根据系统功能和界面设计,编写代码实现各个功能。 4. 数据库设计:使用SQL Server等数据库软件设计图书馆的数据库,将图书信息、用户信息、借书记录等数据存储在数据库中。 5. 进行测试:完成代码编写后,进行系统测试,测试系统的各个功能是否正常运行。 以下是一个简单的C++图书馆管理系统的代码示例: ```cpp #include <iostream> #include <string> #include <vector> using namespace std; // 图书类 class Book { public: Book(string name, string author, string publish, string ISBN, int num) { this->name = name; this->author = author; this->publish = publish; this->ISBN = ISBN; this->num = num; } string GetName() { return name; } string GetAuthor() { return author; } string GetPublish() { return publish; } string GetISBN() { return ISBN; } int GetNum() { return num; } void SetNum(int num) { this->num = num; } private: string name; // 书名 string author; // 作者 string publish; // 出版社 string ISBN; // ISBN号 int num; // 数量 }; // 用户类 class User { public: User(string name, string password, bool isAdmin) { this->name = name; this->password = password; this->isAdmin = isAdmin; } string GetName() { return name; } string GetPassword() { return password; } bool IsAdmin() { return isAdmin; } private: string name; // 用户名 string password; // 密码 bool isAdmin; // 是否是管理员 }; // 图书馆类 class Library { public: // 添加图书 void AddBook(Book book) { books.push_back(book); } // 删除图书 void RemoveBook(string ISBN) { for (int i = 0; i < books.size(); i++) { if (books[i].GetISBN() == ISBN) { books.erase(books.begin() + i); break; } } } // 修改图书数量 void ModifyBookNum(string ISBN, int num) { for (int i = 0; i < books.size(); i++) { if (books[i].GetISBN() == ISBN) { books[i].SetNum(num); break; } } } // 查询图书 vector<Book> QueryBook(string name) { vector<Book> result; for (int i = 0; i < books.size(); i++) { if (books[i].GetName() == name) { result.push_back(books[i]); } } return result; } // 添加用户 void AddUser(User user) { users.push_back(user); } // 删除用户 void RemoveUser(string name) { for (int i = 0; i < users.size(); i++) { if (users[i].GetName() == name) { users.erase(users.begin() + i); break; } } } // 验证用户 bool VerifyUser(string name, string password) { for (int i = 0; i < users.size(); i++) { if (users[i].GetName() == name && users[i].GetPassword() == password) { return true; } } return false; } // 获取用户类型 bool GetUserType(string name) { for (int i = 0; i < users.size(); i++) { if (users[i].GetName() == name) { return users[i].IsAdmin(); } } return false; } private: vector<Book> books; // 图书列表 vector<User> users; // 用户列表 }; int main() { // 初始化图书馆 Library library; // 添加图书 library.AddBook(Book("C++ Primer", "Lippman", "China Machine Press", "978-7-121-33863-8", 5)); library.AddBook(Book("Effective C++", "Scott Meyers", "China Machine Press", "978-7-111-24827-4", 3)); library.AddBook(Book("Thinking in Java", "Bruce Eckel", "China Machine Press", "978-7-115-20130-5", 2)); // 添加用户 library.AddUser(User("admin", "admin", true)); library.AddUser(User("user", "user", false)); // 登录 string name, password; cout << "请输入用户名和密码:" << endl; cout << "用户名:"; cin >> name; cout << "密码:"; cin >> password; if (library.VerifyUser(name, password)) { bool isAdmin = library.GetUserType(name); if (isAdmin) { cout << "管理员登录成功!" << endl; // TODO:管理员操作 } else { cout << "普通用户登录成功!" << endl; // TODO:普通用户操作 } } else { cout << "用户名或密码错误!" << endl; } return 0; } ``` 以上代码只是一个简单的示例,可以根据需要进行修改和扩展。同时,需要注意对异常情况进行处理,例如输入非法数据、数据库连接失败等情况。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 23
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值