Advanced-Cpp/C2/Abstract-Class/Punjabi

From Script | Spoken-Tutorial
Jump to: navigation, search
“Time” “Narration”
00:01 ਸਤਿ ਸ਼੍ਰੀ ਅਕਾਲ ਦੋਸਤੋ, “C + +” ਵਿੱਚ “abstract class” ਅਤੇ “pure virtual function” ਦੇ ਸਪੋਕਨ ਟਿਊਟੋਰਿਅਲ ਵਿੱਚ ਤੁਹਾਡਾ ਸਾਰਿਆ ਦਾ ਸਵਾਗਤ ਹੈ ।
00:08 ਇਸ ਟਿਊਟੋਰਿਅਲ ਵਿੱਚ ਅਸੀਂ ਹੇਠ ਲਿਖੇ ਨੂੰ ਕਰਨਾ ਸਿੱਖਾਂਗੇ,
00:10 * Abstract ਕਲਾਸਾਂ
00:11 * Pure virtual ਫੰਕਸ਼ਨ
00:13 * ਅਸੀਂ ਇਹ ਇੱਕ ਉਦਾਹਰਣ ਦੀ ਮੱਦਦ ਨਾਲ ਕਰਾਂਗੇ ।
00:16 ਇਸ ਟਿਊਟੋਰਿਅਲ ਨੂੰ ਰਿਕਾਰਡ ਕਰਨ ਦੇ ਲਈ, ਮੈਂ ਵਰਤੋਂ ਕਰ ਰਿਹਾ ਹਾਂ,
00:19 * “ਉਬੰਟੁ OS ਵਰਜ਼ਨ 11.10”
00:23 * “g + + ਕੰਪਾਇਲਰ” ਵਰਜ਼ਨ 4.6.1
00:27 ਸਭ ਤੋਂ ਪਹਿਲਾਂ “abstract class” ਦੀ ਜਾਣ-ਪਹਿਚਾਣ ਦੇ ਨਾਲ ਸ਼ੁਰੂ ਕਰਦੇ ਹਾਂ ।
00:31 “Abstract class” ਹਮੇਸ਼ਾ “base class” ਹੁੰਦੀ ਹੈ ।
00:35 ਇਸ ਵਿੱਚ ਘੱਟ ਤੋਂ ਘੱਟ ਇੱਕ “pure virtual function” ਹੁੰਦਾ ਹੈ
00:39 ਅਸੀਂ “abstract class” ਦਾ ਇੰਸਟੈਂਸ ਨਹੀਂ ਬਣਾ ਸਕਦੇ ਹਾਂ ।
00:43 ਹੁਣ “pure virtual function” ਵੇਖਦੇ ਹਾਂ ।
00:45 “Pure virtual function” ਬਿਨ੍ਹਾਂ “body” ਦਾ ਇੱਕ ਫੰਕਸ਼ਨ ਹੈ ।
00:49 ਇਹ ਬੇਸ ਕਲਾਸ ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ ਨਹੀਂ ਹੁੰਦਾ ਹੈ ।
00:52 ਇਹ ਇਸ ਤਰ੍ਹਾਂ ਨਾਲ ਪਰਿਭਾਸ਼ਿਤ ਹੁੰਦਾ ਹੈ:
00:54 “virtual void virtual fun name () = 0;”
01:00 “derived class” ਨੂੰ ਫੰਕਸ਼ਨ ਨੂੰ ਓਵਰਾਇਡ ਕਰਨਾ ਹੀ ਹੋਵੇਗਾ ।
01:04 ਨਹੀਂ ਤਾਂ ਕੰਪਾਇਲਰ ਇੱਕ ਐਰਰ ਦੇਵੇਗਾ ।
01:07 ਫੰਕਸ਼ਨ ਨੂੰ ਲਾਗੂ ਕਰਨਾ “derived class” ‘ਤੇ ਨਿਰਭਰ ਕਰਦਾ ਹੈ ।
01:11 ਹੁਣ ਇੱਕ ਉਦਾਹਰਣ ਵੇਖਦੇ ਹਾਂ ।
01:13 ਮੈਂ ਪਹਿਲਾਂ ਹੀ ਐਡੀਟਰ ‘ਤੇ ਕੋਡ ਟਾਈਪ ਕਰ ਲਿਆ ਹੈ ।
01:16 ਮੈਂ ਇਸ ਨੂੰ ਖੋਲ੍ਹਾਂਗਾ ।
01:18 ਨੋਟ ਕਰੋ ਕਿ ਸਾਡੀ ਫਾਇਲ ਦਾ ਨੇਮ “abstract.cpp” ਹੈ ।
01:22 ਇਸ ਉਦਾਹਰਣ ਵਿੱਚ ਦੋ ਨੰਬਰਸ ਦਾ ਐਡੀਸ਼ਨ ਅਤੇ ਸਬਟਰੈਕਸ਼ਨ ਹਨ ।
01:28 ਹੁਣ ਪੂਰੇ ਕੋਡ ਨੂੰ ਸਮਝਦੇ ਹਾਂ ।
01:30 ਇਹ “iostream” ਸਾਡੀ ਹੈਡਰ ਫਾਇਲ ਹੈ ।
01:33 ਇੱਥੇ ਮੈਂ “std namespace” ਵਰਤੋਂ ਕਰ ਰਿਹਾ ਹਾਂ ।
01:36 ਇਹ “abstract interface” ਨਾਂ ਵਾਲੀ ਕਲਾਸ ਲਈ ਐਲਾਨ ਹੈ ।
01:41 ਫਿਰ ਸਾਡੇ ਕੋਲ “public specifier” ਹੈ ।
01:44 ਇਸ ਵਿੱਚ ਅਸੀਂ “numbers” ਨਾਂ ਵਾਲਾ “virtual function” ਐਲਾਨ ਕੀਤਾ ਹੈ ।
01:49 ਇਹ “0” ਤੋਂ ਇਨਿਸ਼ਿਅਲਾਇਜ ਹੁੰਦਾ ਹੈ ।
01:51 ਫਿਰ ਸਾਡੇ ਕੋਲ ਇੱਕ “non - virtual function” ਹੈ ।
01:55 ਅਤੇ “a” ਅਤੇ “b” ਦੋ ਇੰਟੀਜਰ ਵੈਰੀਏਬਲਸ ਹਨ ।
01:59 ਇੱਥੇ ਅਸੀਂ “ਇਨਪੁਟ ਫੰਕਸ਼ਨ” ਐਕਸੈੱਸ ਕਰਦੇ ਹਾਂ ।
02:01 ਇਸ ਵਿੱਚ ਅਸੀਂ ਨੰਬਰਸ ‘a’ ਅਤੇ ‘b’ ਨੂੰ ਸਵੀਕਾਰ ਕਰਦੇ ਹਾਂ ।
02:05 ਇਹ ‘add’ ਨਾਂ ਵਾਲੀ ਇੱਕ ਡਿਰਾਇਵਡ ਕਲਾਸ ਹੈ ।
02:09 ਇਹ ਬੇਸ ਕਲਾਸ “abstract interface” ਦੀ ਪ੍ਰਾਪਰਟੀਜ ਨੂੰ ਇੰਹੇਰਿਟ ਕਰਦਾ ਹੈ ।
02:14 ਇੱਥੇ ਅਸੀਂ ‘ਫੰਕਸ਼ਨ ਨੰਬਰਸ’ ਨੂੰ ਓਵਰਾਇਡ ਕਰਦੇ ਹਾਂ ।
02:18 ਇਸ ਵਿੱਚ ਅਸੀਂ ਦੋ ਨੰਬਰਸ ਦਾ ਐਡੀਸ਼ਨ ਲਾਗੂ ਕਰਦੇ ਹਾਂ ।
02:21 ਅਤੇ ਨਤੀਜੇ ਨੂੰ ਇੰਟੀਜਰ ਵੈਰੀਏਬਲ ‘sum’ ਵਿੱਚ ਇੱਕਠਾ ਕਰਦੇ ਹਾਂ ।
02:25 ਫਿਰ ਅਸੀਂ ਨਤੀਜਾ ਪ੍ਰਿੰਟ ਕਰਦੇ ਹਾਂ ।
02:27 ਇੱਥੇ ਸਾਡੇ ਕੋਲ ਇੱਕ ਹੋਰ ਡਿਰਾਇਵਡ ਕਲਾਸ ‘sub’ ਹੈ ।
02:31 ਇਹ ਬੇਸ ਕਲਾਸ ‘abstract interface’ ਨੂੰ ਵੀ ਇੰਹੇਰਿਟ ਕਰਦੀ ਹੈ ।
02:35 ਇਸ ਵਿੱਚ ਦੁਬਾਰਾ ਅਸੀਂ ‘ਫੰਕਸ਼ਨ ਨੰਬਰਸ’ ਨੂੰ ਓਵਰਾਇਡ ਕਰਦੇ ਹਾਂ ।
02:39 ਅਤੇ ਇੱਥੇ ਅਸੀਂ ਦੋ ਨੰਬਰਸ ‘a’ ਅਤੇ ‘b’ ਦੇ ਡਿਫਰੇਂਸ ਦੀ ਗਿਣਤੀ ਕਰਦੇ ਹਾਂ ।
02:43 ਫਿਰ ਅਸੀਂ ਡਿਫਰੇਂਸ ਪ੍ਰਿੰਟ ਕਰਦੇ ਹਾਂ ।
02:45 ਇਹ ਸਾਡਾ ‘ਮੇਨ ਫੰਕਸ਼ਨ’ ਹੈ ।
02:48 ਇੱਥੇ ਅਸੀਂ ਕਲਾਸ ‘add’ ਦਾ ਇੱਕ ਆਬਜੈਕਟ ‘obj1’ ਬਣਾਉਂਦੇ ਹਾਂ ।
02:53 ਫਿਰ ਅਸੀਂ ‘object obj1’ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ‘input’ ਅਤੇ ‘numbers’ ਦੋਵੇਂ ਫੰਕਸ਼ਨਸ ਨੂੰ ਕਾਲ ਕਰਦੇ ਹਾਂ ।
02:59 ਫਿਰ ਅਸੀਂ ਕਲਾਸ ‘sub’ ਦਾ ਇੱਕ ਆਬਜੈਕਟ ‘obj2’ ਬਣਾਉਂਦੇ ਹਾਂ ।
03:04 ਫਿਰ ਤੋਂ, ਅਸੀਂ ‘object obj2’ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਦੋ ਫੰਕਸ਼ਨਸ ਨੂੰ ਕਾਲ ਕਰਦੇ ਹਾਂ ।
03:08 ਅਤੇ ਇਹ ਸਾਡੀ ‘ਰਿਟਰਨ ਸਟੇਟਮੈਂਟ’ ਹੈ ।
03:10 ਹੁਣ ਪ੍ਰੋਗਰਾਮ ਨੂੰ ਚਲਾਉਂਦੇ ਹਾਂ ।
03:13 ਆਪਣੇ ਕੀਬੋਰਡ ‘ਤੇ ਇੱਕੋ-ਸਮੇਂ ‘Ctrl, Alt’ ਅਤੇ ‘T’ ਕੀਜ ਇਕੱਠੇ ਦਬਾਕੇ ਟਰਮੀਨਲ ਵਿੰਡੋ ਖੋਲੋ ।
03:21 ਕੰਪਾਇਲ ਕਰਨ ਦੇ ਲਈ:

“g + + ਸਪੇਸ abstract ਡਾਟ cpp ਸਪੇਸ hyphen o ਸਪੇਸ abs”

03:31 ਐਂਟਰ ਦਬਾਓ ।
03:32 ਟਾਈਪ ਕਰੋ: “dot slash abs”
03:34 ਐਂਟਰ ਦਬਾਓ ।
03:36 ਇਹ ਇਸ ਤਰ੍ਹਾਂ ਦਾ ਦਿਖਾਈ ਦਿੰਦਾ ਹੈ “Enter the numbers”
03:38 ਮੈਂ 9 ਅਤੇ 4 ਐਂਟਰ ਕਰਾਂਗਾ ।
03:42 ਆਉਟਪੁਟ ਦਿਖਾਈ ਦਿੰਦੀ ਹੈ “Sum is 13”
03:46 ਅਸੀਂ ਦੁਬਾਰਾ ਵੇਖਦੇ ਹਾਂ “Enter the numbers”
03:49 ਮੈਂ 8 ਅਤੇ 3 ਐਂਟਰ ਕਰਾਂਗਾ ।
03:52 ਆਉਟਪੁਟ ਦਿਖਾਈ ਦਿੰਦੀ ਹੈ ‘Diff is 5’
03:56 ਇਹ ਸਾਨੂੰ ਇਸ ਟਿਊਟੋਰਿਅਲ ਦੇ ਅਖੀਰ ਵਿੱਚ ਲੈ ਕੇ ਜਾਂਦਾ ਹੈ ।
03:59 ਆਪਣੀ ਸਲਾਇਡਸ ‘ਤੇ ਵਾਪਸ ਆਉਂਦੇ ਹਾਂ ।
04:01 ਇਸ ਦਾ ਸਾਰ ਕਰਦੇ ਹਾਂ ।
04:03 ਇਸ ਟਿਊਟੋਰਿਅਲ ਵਿੱਚ ਅਸੀਂ ਸਿੱਖਿਆ, ‘Abstract class’ ਦੀ ‘ਉਦਾਹਰਣ ਕਲਾਸ abstract interface’
04:09 ‘Pure virtual function’ ਉਦਾਹਰਣ ‘virtual void numbers () = 0;’
04:14 ਇੱਕ ਨਿਰਧਾਰਤ ਕੰਮ ਵਿੱਚ ਇੱਕ ਐਬਸਟਰੈਕਟ ਕਲਾਸ “student” ਬਣਾਓ ।
04:17 * ਪਯੋਰ ਵਰਚੂਅਲ ਫੰਕਸ਼ਨ ‘Info’ ਬਣਾਓ ।
04:20 * ਫੰਕਸ਼ਨ ਵਿੱਚ ਸਟੂਡੈਂਟ ਦਾ ‘ਨੇਮ’ ਅਤੇ ‘ਰੋਲ ਨੰਬਰ’ ਸਵੀਕਾਰ ਕਰੋ ।
04:25 * ਦੋ ਡਿਰਾਇਵਡ ਕਲਾਸ ‘marks’ ਅਤੇ ‘sports’ ਬਣਾਓ ।
04:29 * ਮਾਰਕਸ ਵਿੱਚ, ਤਿੰਨ ਸਟੂਡੈਂਟਸ ਦੇ ਮਾਰਕਸ ਸਵੀਕਾਰ ਕਰੋ ।
04:32 * ਸਪੋਰਟਸ ਵਿੱਚ, ‘ਸਪੋਰਟਸ’ ਵਿੱਚ ਸਕੋਰ ਕੀਤੇ ਹੋਏ ਮਾਰਕਸ ਐਂਟਰ ਕਰੋ ।
04:35 * ‘total marks’ ਦੀ ਗਿਣਤੀ ਕਰੋ ।
04:38 * ਫਿਰ ਇੱਕ ਹੋਰ ਡਿਰਾਇਵਡ ਕਲਾਸ ‘result’ ਬਣਾਓ ।
04:41 * ਇਸ ਵਿੱਚ, ਸਟੂਡੈਂਟ ਦਾ ‘ਨੇਮ’, ‘ਰੋਲ ਨੰਬਰ’ ਅਤੇ ‘ਟੋਟਲ ਮਾਰਕਸ’ ਦਿਖਾਓ ।
04:47 http://spoken-tutorial.org/What\_is\_a\_Spoken\_Tutoria ‘ਤੇ ਉਪਲੱਬਧ ਵੀਡੀਓ ਨੂੰ ਵੇਖੋ ।
04:50 ਇਹ ਸਪੋਕਨ ਟਿਊਟੋਰਿਅਲ ਪ੍ਰੋਜੈਕਟ ਦਾ ਸਾਰ ਕਰਦਾ ਹੈ ।
04:53 ਚੰਗੀ ਬੈਂਡਵਿਡਥ ਨਾ ਮਿਲਣ ‘ਤੇ ਤੁਸੀਂ ਇਸਨੂੰ ਡਾਊਂਨਲੋਡ ਕਰਕੇ ਵੀ ਵੇਖ ਸਕਦੇ ਹੋ ।
04:58 ਸਪੋਕਨ ਟਿਊਟੋਰਿਅਲ ਪ੍ਰੋਜੇਕਟ ਟੀਮ, ਸਪੋਕਨ ਟਿਊਟੋਰਿਅਲਸ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਵਰਕਸ਼ਾਪਾਂ ਚਲਾਉਂਦੀ ਹੈ ।
05:03 ਆਨਲਾਇਨ ਟੈਸਟ ਪਾਸ ਕਰਨ ਵਾਲਿਆ ਨੂੰ ਪ੍ਰਮਾਣ ਪੱਤਰ ਵੀ ਦਿੰਦੇ ਹਨ ।
05:07 ਜ਼ਿਆਦਾ ਜਾਣਕਾਰੀ ਦੇ ਲਈ, ਕ੍ਰਿਪਾ ਕਰਕੇ ਸਾਡੇ ਨਾਲ ਸੰਪਰਕ ਕਰੋ ।
05:14 ਸਪੋਕਨ ਟਿਊਟੋਰਿਅਲ ਪ੍ਰੋਜੈਕਟ ਟਾਕ-ਟੂ-ਅ ਟੀਚਰ ਪ੍ਰੋਜੇਕਟ ਦਾ ਹਿੱਸਾ ਹੈ ।
05:18 ਇਹ ਭਾਰਤ ਸਰਕਾਰ ਦੇ ਐਮਐਚਆਰਡੀ ਦੇ “ਆਈਸੀਟੀ ਵਲੋਂ ਰਾਸ਼ਟਰੀ ਸਾਖਰਤਾ ਮਿਸ਼ਨ” ਦੁਆਰਾ ਪ੍ਰਮਾਣਿਤ ਹੈ ।
05:25 ਇਸ ‘ਤੇ ਜ਼ਿਆਦਾ ਜਾਣਕਾਰੀ ਹੇਠਾਂ ਦਿੱਤੇ ਲਿੰਕ ‘ਤੇ ਉਪਲੱਬਧ ਹੈ । http://spoken-tutorial.org/NMEICT-Intro
05:30 ਆਈ.ਆਈ.ਟੀ ਬੰਬੇ ਤੋਂ ਮੈਂ ਨਵਦੀਪ ਤੁਹਾਡੇ ਤੋਂ ਇਜਾਜ਼ਤ ਲੈਂਦਾ ਹਾਂ । ਸਾਡੇ ਨਾਲ ਜੁੜਨ ਲਈ ਧੰਨਵਾਦ । }

Contributors and Content Editors

Navdeep.dav