Advanced-Cpp/C2/Function-Overloading-And-Overriding/Oriya
From Script | Spoken-Tutorial
Time | Narration |
00:01 | ବନ୍ଧୁଗଣ, Function Overloading and Overriding in C++ ଉପରେ ସ୍ପୋକନ୍ ଟ୍ୟୁଟୋରିଆଲକୁ ସ୍ଵାଗତ |
00:09 | ଏହି ଟ୍ୟୁଟୋରିଆଲରେ ଆମେ: |
00:11 | ଫଙ୍କଶନ୍ ଓଭରଲୋଡିଙ୍ଗ, ଫଙ୍କଶନ୍ Overriding କ’ଣ ଶିଖିବା |
00:14 | ଏହାକୁ ଗୋଟିଏ ଉଦାହରଣ ସାହାଯ୍ୟରେ କରନ୍ତୁ |
00:18 | ଏହି ଟ୍ୟୁଟୋରିଆଲକୁ ରେକର୍ଡ କରିବା ପାଇଁ ମୁଁ ବ୍ୟବହାର କରୁଛି: |
00:21 | Ubuntu OS ଭର୍ସନ୍ 11.10 |
00:26 | g++ କମ୍ପାଇଲର୍ ଭର୍ସନ୍ 4.6.1 |
00:30 | ଚାଲନ୍ତୁ function overloadingର ଗୋଟିଏ ପରିଚୟରୁ ଆରମ୍ଭ କରିବା |
00:34 | Function Overloadingର ଅର୍ଥ ହେଉଛି ଦୁଇ କିମ୍ବା ଅଧିକ ଫଙ୍କଶନଗୁଡିକର ନାମ ସମାନ ରହିବା |
00:41 | ଆର୍ଗୁମେଣ୍ଟଗୁଡିକ ଓ ଆର୍ଗୁମେଣ୍ଟଗୁଡିକର data-type ଭିନ୍ନ ରହିବ |
00:47 | ଯେତେବେଳେ ଗୋଟିଏ ଫଙ୍କଶନକୁ କଲ୍ କରାଯାଏ, argument listକୁ ଆଧାରକରି ଏହା ଚୟନ ହୋଇଥାଏ |
00:53 | ଚାଲନ୍ତୁ ଗୋଟିଏ ଉଦାହରଣ ଦେଖିବା |
00:56 | ଏଡିଟର୍ ଉପରେ କୋଡ୍ ଟାଇପ୍ ହୋଇସାରିଛି |
00:59 | ଏହି ପ୍ରୋଗ୍ରାମରେ, ଯୋଗ ପ୍ରକ୍ରିୟାକୁ ସମ୍ପାଦନ କରନ୍ତୁ |
01:03 | ଧ୍ୟାନଦିଅନ୍ତୁ ଯେ ଫାଇଲ୍ ନାମ overload.cpp ଅଟେ |
01:08 | ବର୍ତ୍ତମାନ କୋଡକୁ ବର୍ଣ୍ଣନା କରନ୍ତୁ |
01:10 | iostream, ଏହା ହେଡର୍ ଫାଇଲ୍ ଅଟେ |
01:13 | ଏଠାରେ std namespaceକୁ ବ୍ୟବହାର କରନ୍ତୁ |
01:17 | ତା’ପରେ ଏଠାରେ ଥିବା add() ଫଙ୍କଶନକୁ int ଭାବେ ପରିଭାଷିତ କରାଯାଇଛି |
01:21 | ଏଥିରେ, ତିନୋଟି ଆର୍ଗୁମେଣ୍ଟକୁ ପାସ୍ କରାଯାଇଛି |
01:24 | Int a, int b ଓ int c ଅଟେ |
01:28 | ତା’ପରେ ତିନୋଟି ସଂଖ୍ୟାର ଯୋଗ କାର୍ଯ୍ୟ ସମ୍ପାଦନ କରିବା ସହିତ ଭେଲ୍ୟୂ return କରନ୍ତୁ |
01:33 | ଏଠାରେ ଫଙ୍କଶନ୍ add()କୁ ଓଭରଲୋଡ୍ କରାଯାଇଛି |
01:36 | ଏହାକୁ float ଭାବେ ଘୋଷଣା କରାଯାଇଛି |
01:38 | float d ଓ float e ନାମକ ଦୁଇଟି ଆର୍ଗୁମେଣ୍ଟକୁ ପାସ୍ କରାଯାଇଛି |
01:44 | ତା’ପରେ ଦୁଇଟି ସଂଖ୍ୟା ଉପରେ ଯୋଗ କାର୍ଯ୍ୟ ସମ୍ପାଦନ କରନ୍ତୁ |
01:48 | ଏହା main() ଫଙ୍କଶନ୍ ଅଟେ |
01:50 | main() ଫଙ୍କଶନରେ, ଭିନ୍ନ ଆର୍ଗୁମେଣ୍ଟଗୁଡିକ ସହିତ add() ଫଙ୍କଶନକୁ ଘୋଷଣା କରଯାଇଛି |
01:56 | ତା’ପରେ ଭେରିଏବଲଗୁଡିକୁ ଘୋଷଣା କରନ୍ତୁ |
01:58 | ଏଠାରେ ୟୁଜରଠାରୁ ଇଣ୍ଟିଜର୍ ଭେଲ୍ୟୁଗୁଡିକୁ ଗହଣ କରନ୍ତୁ |
02:03 | ତା’ପରେ ତିନୋଟି ଆର୍ଗୁମେଣ୍ଟ ସହିତ add() ଫଙ୍କଶନକୁ କଲ୍ କରନ୍ତୁ |
02:07 | ଏବଂ ପରିଣାମକୁ ଭେରିଏବଲ୍ sumରେ ଷ୍ଟୋର୍ କରନ୍ତୁ |
02:09 | ଏଠାରେ ପରିଣାମକୁ print କରନ୍ତୁ |
02:12 | ବର୍ତ୍ତମାନ ଏଠାରେ ୟୁଜରଠାରୁ floating point ନମ୍ବରଗୁଡିକୁ ଗ୍ରହଣ କରନ୍ତୁ |
02:17 | ତା’ପରେ ଦୁଇଟି ଆର୍ଗୁମେଣ୍ଟ ସହିତ add() ଫଙ୍କଶନକୁ କଲ୍ କରନ୍ତୁ |
02:21 | ଏବଂ ଏଠାରେ sumକୁ ପ୍ରିଣ୍ଟ କରନ୍ତୁ |
02:23 | ଏହା return ଷ୍ଟେଟମେଣ୍ଟ ଅଟେ |
02:26 | ବର୍ତ୍ତମାନ, ପ୍ରୋଗ୍ରାମକୁ ନିଷ୍ପାଦନ କରନ୍ତୁ |
02:29 | କୀବୋର୍ଡ ଉପରେ Ctrl, Alt ଓ T କୀକୁ ଏକ ସଙ୍ଗେ ଦାବି ଟର୍ମିନଲ୍ ୱିଣ୍ଡୋକୁ ଖୋଲନ୍ତୁ |
02:38 | ନିଷ୍ପାଦନ କରିବା ପାଇଁ, ଟାଇପ୍ କରନ୍ତୁ: g++ ସ୍ପେସ୍ overload ଡଟ୍ cpp ସ୍ପେସ୍ ହାଇଫେନ୍ o ସ୍ପେସ୍ over |
02:49 | Enter ଦାବନ୍ତୁ |
02:51 | ଟାଇପ୍ କରନ୍ତୁ: ଡଟ୍ ସ୍ଲାଶ୍ over |
02:53 | Enter ଦାବନ୍ତୁ |
02:55 | ଏହା, Enter three integers ବୋଲି ପ୍ରଦର୍ଶନ କରିବ |
02:58 | 10, 25 ଓ 48 ପ୍ରବେଶ କରନ୍ତୁ |
03:04 | ଆଉଟପୁଟ୍, Sum of integers is 83 ଭାବେ ପ୍ରଦର୍ଶିତ ହେବ |
03:09 | ବର୍ତ୍ତମାନ-Enter two floating point numbersକୁ ଦେଖନ୍ତୁ |
03:13 | 4.5 ଓ 8.9କୁ ପ୍ରବେଶ କରନ୍ତୁ |
03:17 | Enter ଦାବନ୍ତୁ |
03:19 | ଆଉଟପୁଟ୍, Sum of floating point numbers is 13.4 ଭାବେ ପ୍ରଦର୍ଶିତ ହେବ |
03:25 | ବର୍ତ୍ତମାନ ଚାଲନ୍ତୁ function overridingକୁ ଦେଖିବା |
03:29 | slidesକୁ ଫେରିଆସନ୍ତୁ |
03:31 | derived କ୍ଲାସରେ ଗୋଟିଏ base କ୍ଲାସକୁ ପୁନଃ ପରିଭାଷିତ କରନ୍ତୁ |
03:36 | derived କ୍ଲାସ୍ ଫଙ୍କଶନ୍, base କ୍ଲାସ୍ ଫଙ୍କଶନକୁ ଓଭରରାଇଡ୍ କରିଥାଏ |
03:40 | କିନ୍ତୁ ସମାନ ଆର୍ଗୁମେଣ୍ଟଗୁଡିକ ପାସ୍ ହୋଇଥାଏ |
03:44 | ଏବଂ return-type ମଧ୍ୟ ସମାନ ଥାଏ |
03:47 | ଚାଲନ୍ତୁ ଗୋଟିଏ ଉଦାହରଣକୁ ଦେଖିବା |
03:49 | ଏଠାରେ function Overriding ଉପରେ ଗୋଟିଏ ଉଦାହରଣ ଅଛି |
03:53 | ଧ୍ୟାନଦିଅନ୍ତୁ ଯେ ଫାଇଲ୍ ନାମ override.cpp ଅଟେ |
03:57 | ଚାଲନ୍ତୁ କୋଡକୁ ବୁଝିବା |
04:00 | iostream, ଏହା ହେଡର୍ ଫାଇଲ୍ ଅଟେ |
04:03 | ଏଠାରେ std namespaceକୁ ବ୍ୟବହାର କରନ୍ତୁ |
04:06 | ତା’ପରେ ଏଠାରେ ଗୋଟିଏ କ୍ଲାସ୍ arithmetic ଅଛି |
04:09 | ଏଥିରେ, integer ଭେରିଏବଲଗୁଡିକୁ protected ଭାବେ ଘୋଷଣା କରାଯାଇଛି |
04:14 | ତା’ପରେ public ଭାବେ ଘୋଷଣା କରାଯାଇଥିବା ଫଙ୍କଶନ୍ values() ଅଛି |
04:18 | ଏଥିରେ int x ଓ int y ନାମକ ଦୁଇଟି ଆର୍ଗୁମେଣ୍ଟକୁ ପାସ୍ କରାଯାଇଛି |
04:23 | ତା’ପରେ a ଓ bରେ ଭାଲ୍ୟୁଗୁଡିକୁ ଷ୍ଟୋର୍ କରନ୍ତୁ |
04:26 | ଏଠାରେ operations() ଭାବେ virtual function ଅଛି |
04:30 | ଏଥିରେ, ଦୁଇଟି ସଂଖ୍ୟାକୁ ଯୋଗ କରିବା ସହିତ sumକୁ ପ୍ରିଣ୍ଟ କରନ୍ତୁ |
04:34 | ଏଠାରେ classକୁ ବନ୍ଦ କରନ୍ତୁ |
04:37 | ବର୍ତ୍ତମାନ derived କ୍ଲାସ୍ ଭାବେ କ୍ଲାସ୍ Subtract ଅଛି |
04:41 | ଏହା base କ୍ଲାସ୍ arithmeticକୁ ଇନହେରିଟ୍ କରିବ |
04:45 | ଏଥିରେ, ଦୁଇଟି ସଂଖ୍ୟା ମଧ୍ୟରେ ଥିବା ପ୍ରଭେଦକୁ ଗଣନା କରନ୍ତୁ ଏବଂ ପ୍ରଭେଦକୁ ପ୍ରିଣ୍ଟ କରନ୍ତୁ |
04:50 | ବର୍ତ୍ତମାନ Multiply ଭାବେ ଅନ୍ୟ ଏକ derived କ୍ଲାସ୍ ଅଛି |
04:54 | ଏହା ମଧ୍ୟ base କ୍ଲାସ୍ arithmeticକୁ ଇନହେରିଟ୍ କରିବ |
04:57 | ଏଥିରେ, ଦୁଇଟି ସଂଖ୍ୟାର ଗୁଣଫଳକୁ ଗଣନା କରିବା ସହିତ ଗୁଣଫଳକୁ ପ୍ରଦର୍ଶନ କରନ୍ତୁ |
05:03 | ତା’ପରେ ଏଠାରେ କ୍ଲାସ୍ Divide ଅଛି. ଏହା ମଧ୍ୟ base କ୍ଲାସ୍ arithmeticକୁ ଇନହେରିଟ୍ କରିବ |
05:09 | ଏଥିରେ, ଦୁଇଟି ସଂଖ୍ୟାକୁ ଭାଗ କରନ୍ତୁ ଓ ଭାଗଫଳକୁ ପ୍ରଦର୍ଶନ କରନ୍ତୁ |
05:15 | ଧ୍ୟାନଦିଅନ୍ତୁ ଯେ ଫଙ୍କଶନର return-type ଏବଂ ପାସ୍ ହୋଇଥିବା arguments ମଧ୍ୟ ସମାନ ଅଟନ୍ତି |
05:23 | ଏହା main() ଫଙ୍କଶନ୍ ଅଟେ |
05:26 | ଏଥିରେ, p ଭାବେ କ୍ଲାସ୍ arithmeticର ଗୋଟିଏ ଅବଜେକ୍ଟକୁ ସୃଷ୍ଟି କରନ୍ତୁ |
05:31 | arith, କ୍ଲାସ୍ arithmetic ପ୍ରତି ପଏଣ୍ଟର୍ ଅଟେ |
05:35 | ତା’ପରେ ଏଠାରେ କ୍ଲାସ୍ Subtractର ଅବଜେକ୍ଟ subt ଅଛି |
05:39 | mult, କ୍ଲାସ୍ Multiplyର ଅବଜେକ୍ଟ ଅଟେ |
05:42 | ଏବଂ divd, କ୍ଲାସ୍ Divideର ଅବଜେକ୍ଟ ଅଟେ |
05:46 | ବର୍ତ୍ତମାନ ଏଠାରେ arithର ଆଡ୍ରେସ୍ ପାଇଁ pକୁ ସେଟ୍ କରାଯାଇଛି |
05:50 | ତା’ପରେ ଫଙ୍କଶନ୍ ଭେଲ୍ୟୁଗୁଡିକରେ ଆର୍ଗୁମେଣ୍ଟ ଭାବେ 30 ଓ 12କୁ ପାସ୍ କରନ୍ତୁ |
05:56 | ବର୍ତ୍ତମାନ ଫଙ୍କଶନ୍ operations()କୁ କଲ୍ କରନ୍ତୁ |
05:59 | ଏହା ଯୋଗ କ୍ରିୟାକୁ ସମ୍ପାଦନ କରିବ |
06:02 | ଏଠାରେ arithର ଆଡ୍ରେସ୍ ପାଇଁ subtକୁ ସେଟ୍ କରନ୍ତୁ |
06:07 | ଏବଂ 42 ଓ 5କୁ ଆର୍ଗୁମେଣ୍ଟ ଭାବେ ପାସ୍ କରନ୍ତୁ |
06:11 | ପୁନର୍ବାର ଫଙ୍କଶନ୍ operations()କୁ କଲ୍ କରନ୍ତୁ |
06:14 | ଏହା ଦୁଇଟି ସଂଖ୍ୟାର ବିୟୋଗକ୍ରିୟାକୁ ସମ୍ପାଦନ କରିବ |
06:18 | ବର୍ତ୍ତମାନ, ଏଠାରେ arithର ଆଡ୍ରେସ ପାଇଁ multକୁ ସେଟ୍ କରନ୍ତୁ |
06:22 | ଏବଂ ଆର୍ଗୁମେଣ୍ଟ ଭାବେ 6 ଓ 5କୁ ପାସ୍ କରନ୍ତୁ |
06:26 | ଫଙ୍କଶନ୍ operations()କୁ କଲ୍ କରନ୍ତୁ |
06:29 | ଏହା ଦୁଇଟି ସଂଖ୍ୟାର ଗୁଣନକ୍ରିୟାକୁ ସମ୍ପାଦନ କରିବ |
06:33 | ଶେଷରେ, arithର ଆଡ୍ରେସ ପାଇଁ divdକୁ ସେଟ୍ କରନ୍ତୁ ଏବଂ 6 ଓ 3କୁ ଆର୍ଗୁମେଣ୍ଟ ଭାବେ ପାସ୍ କରନ୍ତୁ |
06:41 | ବର୍ତ୍ତମାନ operations() ଫଙ୍କଶନକୁ କଲ୍ କରନ୍ତୁ |
06:44 | ଏହା ଦୁଇଟି ସଂଖ୍ୟାର ଭାଗକ୍ରିୟାକୁ ସମ୍ପାଦନ କରିବ |
06:48 | ଏବଂ ଏହା return ଷ୍ଟେଟମେଣ୍ଟ ହେବ |
06:50 | ପ୍ରୋଗ୍ରାମକୁ execute କରନ୍ତୁ. ଟର୍ମିନଲକୁ ଫେରିଆସନ୍ତୁ |
06:54 | ଟାଇପ୍ କରନ୍ତୁ: g++ ସ୍ପେସ୍ override ଡଟ୍ cpp ସ୍ପେସ୍ ହାଇଫେନ୍ o ସ୍ପେସ୍ over2 |
07:04 | Enter ଦାବନ୍ତୁ |
07:06 | ଟାଇପ୍ କରନ୍ତୁ: ଡଟ୍ ସ୍ଲାଶ୍ over2 |
07:09 | Enter ଦାବନ୍ତୁ |
07:11 | ଆଉଟପୁଟ୍ ନିମ୍ନ ଭାବେ ପ୍ରଦର୍ଶିତ ହେବ: |
07:13 | Addition of two numbers is 42 |
07:16 | Difference of two numbers is 37 |
07:19 | Product of two numbers is 30 and Division of two numbers is 2 |
07:25 | slidesକୁ ଫେରିଆସନ୍ତୁ |
07:27 | ଚାଲନ୍ତୁ overloading ଓ overriding ମଧ୍ୟରେ ଥିବା ପାର୍ଥକ୍ୟକୁ ଦେଖିବା |
07:31 | Overloading, inheritance ବିନା ସମ୍ପାଦନ ହୋଇପାରେ |
07:35 | Overriding ସମ୍ପାଦନ ହୁଏ ଯେତେବେଳେ ଗୋଟିଏ କ୍ଲାସ୍ ଅନ୍ୟଠାରୁ ଇନହେରିଟ୍ ହୁଏ |
07:41 | overloadingରେ ଆର୍ଗୁମେଣ୍ଟଗୁଡିକ ଓ return-type ନିଶ୍ଚିତରୂପେ ଭିନ୍ନ ହେବେ |
07:46 | overridingରେ ଆର୍ଗୁମେଣ୍ଟଗୁଡିକ ଓ return-type ନିଶ୍ଚିତରୂପେ ସମାନ ହେବେ |
07:51 | overloadingରେ ଫଙ୍କଶନର ନାମ ସମାନ ଅଟେ |
07:55 | କିନ୍ତୁ ସେମାନଙ୍କୁ ପାସ୍ ହୋଇଥିବା ଆର୍ଗୁମେଣ୍ଟ ଅନୁସାରେ ଭିନ୍ନ କାର୍ଯ୍ୟ କରନ୍ତି |
08:01 | overridingରେ ଫଙ୍କଶନ୍ ନାମ ସମାନ ଅଟେ |
08:05 | Derived କ୍ଲାସ୍ ଫଙ୍କଶନ୍, base କ୍ଲାସ୍ ମଧ୍ୟରୁ ବିଭିନ୍ନ କାର୍ଯ୍ୟଗୁଡିକୁ ସମ୍ପାଦନ କରେ |
08:11 | ସଂକ୍ଷିପ୍ତରେ: |
08:13 | ଏହି ଟ୍ୟୁଟୋରିଆଲରେ ଆମେ ନିମ୍ନଲିଖିତ ଶିଖିଲେ: |
08:15 | ଫଙ୍କଶନ୍ overloadingର ଉଦାହରଣ ତିନୋଟି ଆର୍ଗୁମେଣ୍ଟ ସହିତ int add() ଏବଂ |
08:21 | ଦୁଇଟି ଆର୍ଗୁମେଣ୍ଟ ସହିତ float add() |
08:24 | ତ’ପରେ ଫଙ୍କଶନ୍ Overriding- |
08:26 | ଉଦାହରଣ virtual int operations() ଏବଂ int operations() |
08:31 | ସମାନ ଆର୍ଗୁମେଣ୍ଟ ଓ return-type ଥିବା ଫଙ୍କଶନଗୁଡିକ ଏବଂ ଉଭୟ ମଧ୍ୟରେ ଥିବା ପାର୍ଥକ୍ୟ. ଏକ ଆସାଇନମେଣ୍ଟ ଭାବେ |
08:39 | ଫଙ୍କଶନ୍ overloadingକୁ ବ୍ୟବହାର କରି, rectangle, square and circleର କ୍ଷେତ୍ରଫଳ |
08:46 | ଗଣନା କରିବା ପାଇଁ ଗୋଟିଏ ପ୍ରୋଗ୍ରାମ୍ ଲେଖନ୍ତୁ |
08:48 | ନିମ୍ନ ଲିଙ୍କରେ ଉପଲବ୍ଧ ଥିବା ଭିଡିଓକୁ ଦେଖନ୍ତୁ |
08:52 | ଏହା ସ୍ପୋକନ୍ ଟ୍ୟୁଟୋରିଆଲ୍ ପ୍ରୋଜେକ୍ଟକୁ ସାରାଂଶିତ କରେ |
08:55 | ଯଦି ଆପଣଙ୍କର ଭଲ ବ୍ୟାଣ୍ଡୱିଡଥ୍ ନାହିଁ, ଏହାକୁ ଡାଉନଲୋଡ୍ କରିଦେଖିପାରିବେ |
08:59 | ସ୍ପୋକନ୍ ଟ୍ୟୁଟୋରିଆଲ୍ ପ୍ରୋଜେକ୍ଟ ଟିମ୍: |
09:02 | ସ୍ପୋକନ୍ ଟ୍ୟୁଟୋରିଆଲ୍ସ ବ୍ୟବହାର କରି କର୍ମଶାଳାମାନ ଚଲାନ୍ତି |
09:05 | ଅନଲାଇନ୍ ଟେଷ୍ଟ ପାସ୍ କରୁଥିବା ବ୍ୟକ୍ତିମାନଙ୍କୁ ପ୍ରମାଣପତ୍ର ଦିଅନ୍ତି. |
09:09 | ଅଧିକ ବିବରଣୀ ପାଇଁ ଦୟାକରି |
09:12 | contact@spoken-tutorial.orgକୁ ଲେଖନ୍ତୁ |
09:16 | ସ୍ପୋକନ୍ ଟ୍ୟୁଟୋରିଆଲ ପ୍ରୋଜେକ୍ଟ, ଟକ୍ ଟୁ ଏ ଟିଚର୍ ପ୍ରୋଜେକ୍ଟର ଏକ ଅଂଶ |
09:20 | ଏହା ଭାରତ ସରକାରଙ୍କ MHRDର ICT ମାଧ୍ୟମରେ ରାଷ୍ଟ୍ରୀୟ ସାକ୍ଷରତା ମିଶନ୍ ଦ୍ୱାରା ସମର୍ଥିତ |
09:27 | ଏହି ମିଶନ୍ ଉପରେ ଅଧିକ ବିବରଣୀ ନିମ୍ନ ଲିଙ୍କରେ ଉପଲବ୍ଧ |
09:32 | ଆଇଆଇଟି ବମ୍ୱେ ତରଫରୁ, ପ୍ରଦୀପ ମହାପାତ୍ରଙ୍କ ସହ ମୁଁ ପ୍ରଭାସ ତ୍ରିପାଠୀ ଆପଣଙ୍କଠାରୁ ବିଦାୟ ନେଉଛି |
09:36 | ଆମ ସହିତ ଜଡ଼ିତ ହୋଇଥିବାରୁ ଧନ୍ୟବାଦ |