Difference Between Reference And Pointers In C++

Поделиться
HTML-код
  • Опубликовано: 26 дек 2024

Комментарии • 65

  • @CppNuts
    @CppNuts  5 лет назад +7

    Hi everyone, Don't forget to hit LIKE and SUBSCRIBE button for more videos like this!!
    And this will help me a-lot.

  • @IshaqKhan-rk5bl
    @IshaqKhan-rk5bl 6 лет назад +11

    i have seen many channels regarding c++ but your content is to the point and also that extra knowledge about things is amazing

  • @subratkumarsahoo3633
    @subratkumarsahoo3633 5 лет назад +10

    Reference can extend the lifetime of a temporary object. In C++ if you bind a const reference to a temporary object, the lifetime of that object becomes the lifetime of the reference.

  • @kushgh
    @kushgh Год назад

    I absolutely love your videos Cpp Nuts. If it weren't for you guys, I would have never learned MultiThreading so fast.
    I just wanted to point out that at 07:00 - You mention that r++ is impossible and (&r)++ is possible, whereas its the opposite.
    You will get the following error at (&r)++ -> error: increment of read-only location ‘& r’
    Whereas r++ will just increment i by 1, so i and r will become 11.
    Love your content. And a major salute to Team CppNuts.

  • @fatihersoy7559
    @fatihersoy7559 4 года назад +1

    Best cpp lecturer on RUclips.

    • @CppNuts
      @CppNuts  4 года назад

      Thanks man..

  • @prishaphotography9063
    @prishaphotography9063 7 лет назад +1

    Sir,you covered more than expected content.might be you are the only one

    • @CppNuts
      @CppNuts  7 лет назад +1

      +Ankit Makadia thanks man.. :)

  • @BiranchiNarayanNayak
    @BiranchiNarayanNayak 2 года назад

    Excellent Explanation, love it

  • @Ady2xp
    @Ady2xp 7 лет назад +1

    Awesome video! Thank you for it!

    • @CppNuts
      @CppNuts  7 лет назад

      Ady2xp, thank you so much.

  • @somanathnayak4279
    @somanathnayak4279 6 лет назад +1

    Hi, Thanks a lot for your noble effort of adding cpp videos. I have a question. Please let me know when to use only pointer and when to use only reference while writing a program. What is the real life usage of reference over pointer? If reference and pointer both are present in C++ means there should be some situations where only reference is useful and some places where only pointer is useful. Thanks in advance.

  • @georgeabraham7256
    @georgeabraham7256 2 года назад

    &: you can make a copy or pass a reference, you need to have an independent copy(y = x) that will change from the original or you need to modify the same source value somewhere else(&y = x).
    *: you need to index something, even the CPU indexes it's instruction code and registers incrementors through your program with the same feature gained from a pointer.. anything can be indexed... the heap is only accessible by registers tracking your stuff on the heap by address values stored in the stack by hard design.. you can't get past the extra *dereference to gain access to the stuff you have out there. stack: a memory address containing a value, heap: a memory address containing a memory address that containing a value/structure/etc.

  • @lidavid7809
    @lidavid7809 3 года назад

    really clear, thank u sir!

    • @CppNuts
      @CppNuts  3 года назад

      Glad it helped!

  • @MrDhawal29
    @MrDhawal29 7 лет назад +1

    Your Regular follower now..:D
    Prepare a video on Red Black tree in DS..
    And yeah keep it up !!

    • @CppNuts
      @CppNuts  7 лет назад

      Hi Dhawal Arora, Let the data structures & algorithms turn come. :D
      I am trying my best to reach that list ASAP, and thanks for following my videos dude.

    • @MrDhawal29
      @MrDhawal29 7 лет назад +1

      No worries dude,Keep it up..we are with you !!

    • @CppNuts
      @CppNuts  7 лет назад

      +Dhawal Arora, thanks dude..

  • @adityaghaywat3648
    @adityaghaywat3648 4 года назад

    @3:25 why it is different?

  • @srinivas2808
    @srinivas2808 7 лет назад +2

    plz make a video of difference b/w function overloading and overriding ......

    • @CppNuts
      @CppNuts  7 лет назад +1

      +Srinivas KL, here is that video, what you asked for ruclips.net/video/CdVpbjFetD8/видео.html

    • @srinivas2808
      @srinivas2808 7 лет назад +1

      Thank you .....

    • @CppNuts
      @CppNuts  7 лет назад

      +Srinivas KL you are most welcome :)

  • @cos1paY
    @cos1paY 5 лет назад +1

    Very helpful.
    thx

    • @CppNuts
      @CppNuts  5 лет назад

      glad it helped.

  • @spicytuna08
    @spicytuna08 6 лет назад +1

    hold on. if p is a pointer to an int. int *p; int i = 10 p=i; *p is 10. p is the address of i.&p is the adress of p. is this correct?

    • @CppNuts
      @CppNuts  6 лет назад

      Yes correct but assume mean to say p=&i; in your comment then everything you wrote is valid.

  • @सत्यमेवजयते-स7प

    I think you missed 1 poimt which that we cannot have array of references but with pointers it is possible

    • @CppNuts
      @CppNuts  Год назад +2

      Oh.. great.. Thanks for pointing this out.
      I should pin this comment so that few people would get benefited from this comment.

  • @nithyanarayan8080
    @nithyanarayan8080 6 лет назад

    Nice video. Having a doubt in indirection:
    Can we consider this as multiple indirection?
    int i=1;
    int &r=i;
    int &j=r;
    int &e=j;
    int &m=e;
    cout

  • @kartikpodugu
    @kartikpodugu Год назад

    Can you elaborate what is the use of creating a reference to a reference ?

  • @BernhardWeber-l5b
    @BernhardWeber-l5b 2 года назад

    I do not see how someone deem this a good and precise explanation. Thanks for removing dislike, RUclips broncos.

    • @CppNuts
      @CppNuts  2 года назад

      I appreciate that!

  • @esmaeil9478
    @esmaeil9478 4 месяца назад

    Thank you!

  • @seriouss9077
    @seriouss9077 2 месяца назад

    1:29
    4:43
    5:31

  • @seriouss9077
    @seriouss9077 2 месяца назад

    Also we cannot increment and decrement value of refrence as mention in video

  • @kinjalshah2796
    @kinjalshah2796 4 года назад

    How members are accessed through reference?

  • @spicytuna08
    @spicytuna08 6 лет назад +1

    hold on. reference variable must occupy a space somewhere. i get it that it is an alias. but there must be a space for alias.

  • @sathviktumoju1195
    @sathviktumoju1195 4 года назад

    good work

    • @CppNuts
      @CppNuts  4 года назад

      Thank you! Cheers!

  • @rakhilsoman9299
    @rakhilsoman9299 6 лет назад

    at 6:58 You say (&r)++;. This is an error, right?

  • @akshaykulkarni1301
    @akshaykulkarni1301 3 года назад

    Thanks

  • @kroax9720
    @kroax9720 2 месяца назад

    Nice content , but mate switched accents in between the video !

  • @LazyTechNo
    @LazyTechNo 6 лет назад +1

    u said reassignment is not possible with reference. then u put r = var and accepted that how its possible then ? i didn't get this point watching 2 times. please explain

    • @CppNuts
      @CppNuts  6 лет назад

      I would have said that once reference is pointing to something, then we can not change it to refer something else.
      And when you are creating reference that time only you have to initialize to which it should refer. And then it will not change what it is referring to.
      And you can not just create reference variable without making it refer something.

    • @LazyTechNo
      @LazyTechNo 6 лет назад +1

      i am also saying that &r = i; which is pointing to something. then how u changed r = var; ?

    • @CppNuts
      @CppNuts  6 лет назад

      Actually you are not changing the reference, you are changing the value at i with var.

  • @sakuranooka
    @sakuranooka 3 года назад

    Ok, I can see all these differences. But what is actually the purposes of references? Why did people decide to introduce them? To me references look like synonyms for variable names, so I can use "r" instead of "i", but what's the point? Why SHOULD I use "r" rather than "i"?

    • @reassume4826
      @reassume4826 2 года назад

      Suppose u want to have another variable with the same value...so to keep the other variable update and also reuse the memory of previous variable..we just store references.

  • @zc4060
    @zc4060 5 лет назад +1

    int a = 10;
    int *p = &a;
    p and a should have the same address. I tried it on my computer.

    • @CppNuts
      @CppNuts  5 лет назад +3

      p is holding the address of a, but p will have its own address, then only p can store the address of a right??
      if(p == &a) is true

  • @spaceinvader8892
    @spaceinvader8892 5 лет назад +1

    Nice, but I would write Address Arithmetic Operations for 4th.

  • @bluehornet6752
    @bluehornet6752 7 лет назад +3

    You talk WAY too fast in the beginning of your videos. It's virtually impossible to understand what you're actually saying.
    Otherwise, it was a nice video and a good review of references compared to pointers in C++. I might have made use of *nullptr* instead of NULL for initializing the pointer, but that's not a huge deal. It's just the new C++.

    • @CppNuts
      @CppNuts  7 лет назад +1

      Tom B, i will work on my speed, thanks man.. :)

  • @Vickyrd7936
    @Vickyrd7936 3 года назад

    All your viideos are awesome. Only thing hurts to (my) ears are your fake accent.

  • @HosseinAmirshaghaghi
    @HosseinAmirshaghaghi 2 года назад

    That is not a good explanation.

    • @CppNuts
      @CppNuts  2 года назад

      What happened?