Guest User

Untitled

a guest
Jun 21st, 2018
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.47 KB | None | 0 0
  1. int * get_arr() {
  2. int loc[] = { 1, 2, 3, 4, 5};
  3. return loc; // NO!!! returns a dangling pointer
  4. }
  5.  
  6. int get_size(int arr[]) {
  7. return sizeof(arr); // NO!!! returns sizeof(int *)
  8. }
  9.  
  10. std::array<int> get_arr() {
  11. std::array<int, 5> arr = { 1, 2, 3, 4, 5 };
  12. return arr; // fine, returning an object by copy (probably elided)
  13. }
  14.  
  15. int get_size(const std::array<int>& arr) {
  16. return arr.size(); // fine and was passed by reference: no copy involved
  17. }
Add Comment
Please, Sign In to add comment