C++ Advanced Topics: 10 Questions
- 时间:2020-09-17 11:25:43
- 分类:网络文摘
- 阅读:143 次
Here are the 10 questions to test your C++ advanced topics skills (correct answers are marked in BOLD):
You want to use std::map as a lookup table, but you might have several entries with the same key. You should use:
- std::multimap
- std::map, this isn’t a problem
- std::map with vector instances for the values
- std::duplimap
Which of these is not an advantage of std::string over char* strings?
- move semantics are implemented for you
- memory is automatically cleaned up
- there are less opportunities to code off-by-one-bugs
- strings take up less memory on the free store
When is it a good design to use a raw pointer as a member variable?
- When you are willing to write code to manage the lifetime
- When the compiler will generate lifetime management code for you
- When the pointer is only used to call methods, not for lifetime
- Never
In the statement x = update(b+c,d); which of these is an rvalue?
- x
- b+c
- b+c,d
- d
Some files that include a header to get a definition of a class can instead just use a forward reference. Which of these kinds of code can do that?
- Code that only calls public methods of the class
- Code that accesses methods of the class only through a pointer
- Code that doesn’t call methods or declare instances of the class
- Code that is in a friend class of the class
When should you choose list over vector?
- Never
- When you’ve measured a performance difference in your own application
- When you will insert and delete more often than you will traverse
- When the objects in the container are large
Which of these statements about standard algorithms is true
- They may be slower than code you write yourself
- They may be faster than code you write yourself
- They cannot be faster than code you write yourself
- They are always faster than code you write yourself
The standard vector will use move semantics if possible. Which contained elements can’t be moved unless you write a move constructor and move assignment operator?
- objects with standard vector instances as member variables
- objects with standard unique_pr instances as member variables
- objects with a destructor
- standard string instances
When is the best time to mark a member function as const?
- never
- after it’s tested and working
- before anyone else writes code that calls it
- before you write it
If a lambda captures a local by reference, what bad thing may happen?
- The lambda itself cannot be put into a variable
- The lambda will not be able to change the captured value
- The value may go out of scope before the lambda uses it
- The lambda cannot call a function
–EOF (The Ultimate Computing & Technology Blog) —
推荐阅读:微博营销如何赚钱?我给大家提供一些思路 百度AI生态的建立 给创业公司带来了什么好处? 创业项目营销效果不佳 只因没做好这几件事 AI把英语系新生吓退学?别急,我们从来都是那只懒蚂蚁 创业初期该做什么?首先你需要避开的这5大坑! 2018世界人工智能大会开幕,它给创业者带来了哪些思路? 创业寒冬下 初创公司如何才可以打破C轮死魔咒? 为什么企业找不到合适的互联网营销负责人? 知识焦虑遇冷后 知识付费的下一个风口究竟在哪里? 2018秋北京松松兄弟线下聚会干货分享
- 评论列表
-
- 添加评论