Advanced-Cpp/C2/Constructor-And-Destructor/Punjabi
From Script | Spoken-Tutorial
“Time” | “Narration” | |
00:01 | ਸਤਿ ਸ਼੍ਰੀ ਅਕਾਲ ਦੋਸਤੋ, C + + ਵਿੱਚ Constructors (ਕੰਸਟਰਕਟਰਸ) ਅਤੇ Destructors (ਡਿਸਟਰਕਟਰਸ) ਦੇ ਸਪੋਕਨ ਟਿਊਟੋਰਿਅਲ ਵਿੱਚ ਤੁਹਾਡਾ ਸਾਰਿਆ ਦਾ ਸਵਾਗਤ ਹੈ । | |
00:07 | ਇਸ ਟਿਊਟੋਰਿਅਲ ਵਿੱਚ ਅਸੀਂ ਹੇਠ ਲਿਖੇ ਨੂੰ ਕਰਨਾ ਸਿੱਖਾਂਗੇ, | |
00:09 | Constructors (ਕੰਸਟਰਕਟਰਸ) | |
00:10 | ਕੰਸਟਰਕਟਰਸ ਦੀਆਂ ਕਿਸਮਾਂ | |
00:12 | Destructors (ਡਿਸਟਰਕਟਰਸ) | |
00:13 | ਅਸੀਂ ਕੁੱਝ ਉਦਾਹਰਣਾਂ ਦੀ ਮੱਦਦ ਨਾਲ ਇਹ ਕਰਾਂਗੇ । | |
00:17 | ਇਸ ਟਿਊਟੋਰਿਅਲ ਨੂੰ ਰਿਕਾਰਡ ਕਰਨ ਦੇ ਲਈ, ਮੈਂ ਵਰਤੋਂ ਕਰ ਰਿਹਾ ਹਾਂ | |
00:20 | ਉਬੰਟੁ ‘ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ’ ਵਰਜ਼ਨ 11.10, | |
00:23 | ‘g++’ ‘Compiler’ ਵਰਜ਼ਨ 4.6.1 | |
00:28 | ਹੁਣ ‘Constructors’ ਦੀ ਜਾਣ-ਪਹਿਚਾਣ ਦੇ ਨਾਲ ਸ਼ੁਰੂ ਕਰਦੇ ਹਾਂ । | |
00:31 | ‘Constructor’ ਇੱਕ ਮੈਂਬਰ ਫੰਕਸ਼ਨ ਹੈ । | |
00:33 | ਇਸ ਦਾ ਨਾਮ ‘class name’ ਦੇ ਵਰਗਾ ਹੀ ਹੈ । | |
00:37 | ‘Constructors’ ਵੈਲਿਊਜ਼ ਰਿਟਰਨ ਨਹੀਂ ਕਰ ਸਕਦੇ । | |
00:40 | ਜਦੋਂ ਆਬਜੈਕਟ ਬਣਦਾ ਹੈ ਤਾਂ ਇਹ ਆਪਣੇ ਆਪ ਕਾਲ ਹੁੰਦਾ ਹੈ । | |
00:44 | ‘Constructors’ ਦੀਆਂ ਕਿਸਮਾਂ : | |
00:46 | ‘Parameterized Constructors‘ | |
00:49 | ‘Copy Constructors‘ | |
00:50 | ਅਤੇ ‘Default Constructors’ | |
00:53 | ਹੁਣ ‘Destructors’ ‘ਤੇ ਜਾਂਦੇ ਹਾਂ । | |
00:56 | ‘Destructors’, ਮੈਮਰੀ (memory) ਨੂੰ ਡੀਐਲੋਕੇਟ (deallocate) ਕਰਨ ਵਿੱਚ ਵਰਤੇ ਜਾਂਦੇ ਹਨ । | |
00:59 | ਉਹ ਕਾਲ ਹੁੰਦੇ ਹਨ ਜਦੋਂ ਇੱਕ ‘object’ ਖ਼ਤਮ ਹੁੰਦਾ ਹੈ । | |
01:02 | ਇੱਕ ‘destructor’ ਕੋਈ ਆਰਗਿਊਮੈਂਟਸ ਨਹੀਂ ਲੈਂਦਾ ਅਤੇ ਨਾ ਹੀ ਕੋਈ ‘return types’ ਰੱਖਦਾ ਹੈ । | |
01:07 | ਹੁਣ ‘Constructors and Destructors’ ‘ਤੇ ਇੱਕ ਉਦਾਹਰਣ ਵੇਖਦੇ ਹਾਂ, | |
01:11 | ਮੈਂ ਐਡੀਟਰ ‘ਤੇ ਪਹਿਲਾਂ ਹੀ ਇੱਕ ਕੋਡ ਟਾਈਪ ਕਰ ਲਿਆ ਹੈ, ਮੈਂ ਇਸ ਨੂੰ ਖੋਲ੍ਹਾਂਗਾ । | |
01:15 | ਨੋਟ ਕਰੋ, ਕਿ ਸਾਡੀ ਫਾਇਲ ਦਾ ਨੇਮ ‘cons hyphen dest dot cpp’ ਹੈ । | |
01:20 | ਇਸ ਪ੍ਰੋਗਰਾਮ ਵਿੱਚ ਅਸੀਂ constructors ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਦੋ ਨੰਬਰਸ ਦਾ ਐਡੀਸ਼ਨ ਦਿਖਾਵਾਂਗੇ । | |
01:25 | ਮੈਂ ਹੁਣ ਕੋਡ ਸਮਝਾਉਂਦਾ ਹਾਂ । | |
01:27 | ਇਹ ‘iostream’ ਸਾਡੀ ‘header file’ ਹੈ । | |
01:30 | ਇੱਥੇ ਅਸੀਂ ‘std’ ਨੇਮਸਪੇਸ ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਹੈ । | |
01:33 | ਫਿਰ ਸਾਡੇ ਕੋਲ ‘Addition’ ਕਲਾਸ ਹੈ । ‘a’ ਅਤੇ ‘b’ ਇੰਟੀਜਰ ਵੈਰੀਏਬਲਸ ਹਨ । | |
01:38 | ਇਹ ਕਲਾਸ ‘Addition’ ਦੇ ਪ੍ਰਾਇਵੇਟ ਮੈਂਬਰਸ ਹਨ । | |
01:42 | ਇੱਥੇ ਸਾਡੇ ਕੋਲ ‘public’ specifier ਹੈ । | |
01:44 | ਫਿਰ ਸਾਡੇ ਕੋਲ ਕੰਸਟਰਕਟਰ ‘Addition’ ਹੈ । | |
01:47 | ‘constructor’ ਦਾ ਨਾਮ ਉਹੀ ਹੈ ਜੋ ਕਲਾਸ ਦਾ ਹੈ । | |
01:52 | ਇੱਥੇ ਮੈਂ ਦੋ ਆਰਗਿਊਮੈਂਟਸ ਪਾਸ ਕੀਤੇ ਹਨ । | |
01:54 | ਹੁਣ ਅਸੀਂ ਇੱਕ Destructor ਪਰਿਭਾਸ਼ਿਤ ਕੀਤਾ । | |
01:57 | ਇਸ ਦੇ ਲਈ ਅਸੀਂ ‘tilde’ ਚਿੰਨ੍ਹ ਦੇ ਅੱਗੇ ਡਿਸਟਰਕਟਰ ਨੇਮ ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਹੈ । | |
02:02 | ਇਹ ਪਬਲਿਕ ਫੰਕਸ਼ਨ ਐਡ ਹੈ । | |
02:05 | ਇਹ a ਅਤੇ b ਦਾ ਸਮ ਰਿਟਰਨ ਕਰਦਾ ਹੈ । | |
02:08 | ਇੱਥੇ ਅਸੀਂ ਸਕੋਪ ਰੇਜੋਲਿਊਸ਼ਨ ਓਪਰੇਟਰ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਕੰਸਟਰਕਟਰ ਐਕਸੈੱਸ ਕਰਦੇ ਹਾਂ । | |
02:12 | a ਅਤੇ b ਪ੍ਰਾਇਵੇਟ ਮੈਂਬਰਸ ਹਨ । | |
02:15 | ਪ੍ਰਾਇਵੇਟ ਮੈਂਬਰਸ ਨੂੰ ਐਕਸੈੱਸ ਕਰਨ ਦੇ ਲਈ ਅਸੀਂ x ਅਤੇ y ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹਾਂ । | |
02:19 | ਫਿਰ ਅਸੀਂ ‘destructor’ ਐਕਸੈੱਸ ਕਰਦੇ ਹਾਂ । | |
02:21 | ਇਸ ਵਿੱਚ ਅਸੀਂ ‘Memory Deallocation’ ਪ੍ਰਿੰਟ ਕਰਦੇ ਹਾਂ । | |
02:25 | ਇਹ ਸਾਡਾ ‘main function’ ਹੈ । | |
02:28 | ਇੱਥੇ ਅਸੀਂ ‘Addition’ ਕਲਾਸ ਦਾ ਆਬਜੈਕਟ ‘obj’ ਬਣਾਉਂਦੇ ਹਾਂ । | |
02:32 | ਫਿਰ ਅਸੀਂ ਦੋ ਆਰਗਿਊਮੈਂਟਸ 3 ਅਤੇ 4 ਪਾਸ ਕਰਦੇ ਹਾਂ । | |
02:36 | ‘3’ ‘x’ ਵਿੱਚ ਇੱਕਠਾ ਹੋਵੇਗਾ ਅਤੇ ‘4’ ‘y’ ਵਿੱਚ ਇੱਕਠਾ ਹੋਵੇਗਾ । | |
02:40 | ਇਸ ਦਾ ਮਤਲੱਬ ‘a’ ਦੀ ਵੈਲਿਊ 3 ਅਤੇ ‘b’ ਦੀ ਵੈਲਿਊ 4 ਹੈ । | |
02:45 | ਕੰਸਟਰਕਟਰ ਜੋ ਆਰਗਿਊਮੈਂਟਸ ਰੱਖਦਾ ਹੈ ‘parameterized constructor’ ਕਹਾਉਂਦਾ ਹੈ । | |
02:50 | ਇਸ ਲਈ ਇਹ ‘parameterized constructor’ ਹੈ । | |
02:53 | ਇੱਥੇ ਅਸੀਂ ਆਬਜੈਕਟ ‘obj’ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਫੰਕਸ਼ਨ ‘add’ ਕਾਲ ਕਰਦੇ ਹਾਂ । | |
02:58 | ਅਤੇ ਅਸੀਂ ਸਮ ਪ੍ਰਿੰਟ ਕਰਦੇ ਹਾਂ । | |
03:00 | ਇਹ ਸਾਡੀ ‘return’ ਸਟੇਟਮੈਂਟ ਹੈ । | |
03:02 | ਹੁਣ ਪ੍ਰੋਗਰਾਮ ਨੂੰ ਚਲਾਉਂਦੇ ਹਾਂ । | |
03:05 | ਆਪਣੇ ਕੀਬੋਰਡ ‘ਤੇ ਇੱਕੋ-ਸਮੇਂ ‘Ctrl, Alt ਅਤੇ T’ ਕੀਜ ਦਬਾਕੇ ਟਰਮੀਨਲ ਵਿੰਡੋ ਖੋਲੋ । | |
03:12 | ਕੰਪਾਇਲ ਕਰਨ ਦੇ ਲਈ ਟਾਈਪ ਕਰੋ, ‘g++ ਸਪੇਸ cons hyphen dest ਡਾਟ cpp ਸਪੇਸ hyphen o ਸਪੇਸ cons‘ | |
03:21 | ਐਂਟਰ ਦਬਾਓ । | |
03:23 | ਟਾਈਪ ਕਰੋ ‘dot slash cons’ | |
03:25 | ਐਂਟਰ ਦਬਾਓ । | |
03:27 | ਆਉਟਪੁਟ ਇਸ ਤਰ੍ਹਾਂ ਦੀ ਦਿਖਾਈ ਦਿੰਦੀ ਹੈ | |
03:29 | ‘Sum is 7’ ਅਤੇ ‘Memory Deallocation’ | |
03:33 | ਹੁਣ ‘ਡਿਫਾਲਟ constructors’ ‘ਤੇ ਇੱਕ ਉਦਾਹਰਣ ਵੇਖਦੇ ਹਾਂ । | |
03:37 | ਆਪਣੇ ਪ੍ਰੋਗਰਾਮ ‘ਤੇ ਵਾਪਸ ਆਉਂਦੇ ਹਾਂ । | |
03:39 | ਮੈਂ ਪਹਿਲਾਂ ਹੀ ਕੋਡ ਟਾਈਪ ਕਰ ਲਿਆ ਹੈ । | |
03:41 | ਨੋਟ ਕਰੋ ਕਿ ਸਾਡੀ ਫਾਇਲ ਦਾ ਨੇਮ ‘default dot cpp’ ਹੈ । | |
03:45 | ਜੇ ‘constructor’ ‘class’ ਵਿੱਚ ਐਲਾਨ ਨਹੀਂ ਹੋਇਆ ਹੈ, | |
03:48 | ਤਾਂ ‘compiler’ ਕਲਾਸ ਦੇ ਲਈ ਇੱਕ ‘ਡਿਫਾਲਟ constructor’ ਲੈਂਦਾ ਹੈ । | |
03:53 | ਹੁਣ ਮੈਂ ਕੋਡ ਸਮਝਾਉਂਦਾ ਹਾਂ । | |
03:55 | ਇਹ ‘iostream’ ਸਾਡੀ ਹੈਡਰ ਫਾਇਲ ਹੈ । | |
03:58 | ਇੱਥੇ ਅਸੀਂ ‘std namespace’ ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਹੈ । | |
04:02 | ਫਿਰ ਸਾਡੇ ਕੋਲ ‘class Subtraction’ ਹੈ । | |
04:04 | ਫਿਰ ਅਸੀਂ ‘public’ ਵਿੱਚ a ਅਤੇ b ਐਲਾਨ ਕੀਤੇ ਹਨ । | |
04:08 | ਇੱਥੇ ਸਾਡੇ ਕੋਲ ‘sub’ ਫੰਕਸ਼ਨ ਹੈ । | |
04:10 | ਅਸੀਂ ਦੋ ਆਰਗਿਊਮੈਂਟਸ ‘int a’ ਅਤੇ ‘int b’ ਪਾਸ ਕੀਤੇ ਹਨ । | |
04:15 | ਇਹ ਦੋ ਨੰਬਰਸ ‘a’ ਅਤੇ ‘b’ ਦਾ ਸਬਟਰੈਕਸ਼ਨ ਰਿਟਰਨ ਕਰਦਾ ਹੈ । | |
04:19 | ਇਹ ‘ਡਿਫਾਲਟ constructor’ ਹੈ । | |
04:22 | ਇੱਥੇ ਅਸੀਂ ‘scope resolution operator’ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਡਿਫਾਲਟ ਕੰਸਟਰਕਟਰ ਨੂੰ ਐਕਸੈੱਸ ਕਰਦੇ ਹਾਂ । | |
04:27 | ਇਹ ਸਾਡਾ ‘main’ ਫੰਕਸ਼ਨ ਹੈ । | |
04:29 | ਇਸ ਵਿੱਚ ਅਸੀਂ ਵੈਰੀਏਬਲ ‘x’ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤਾ । | |
04:34 | ਇੱਥੇ ਅਸੀਂ ਕਲਾਸ ‘subtraction’ ਦਾ ਇੱਕ ‘object’ ‘s’ ਬਣਾਉਂਦੇ ਹਾਂ । | |
04:39 | ਫਿਰ ਅਸੀਂ ‘object’ ‘s’ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਫੰਕਸ਼ਨ ‘sub’ਨੂੰ ਕਾਲ ਕਰਦੇ ਹਾਂ । | |
04:42 | ਅਤੇ ਦੋ ਆਰਗਿਊਮੈਂਟਸ 8 ਅਤੇ 4 ਪਾਸ ਕਰਦੇ ਹਾਂ । | |
04:47 | ਫਿਰ ਨਤੀਜਾ ਵੈਰੀਏਬਲ x ਵਿੱਚ ਇੱਕਠਾ ਹੁੰਦਾ ਹੈ । | |
04:51 | ਅਤੇ ਇੱਥੇ ਅਸੀਂ ‘difference’ ਪ੍ਰਿੰਟ ਕਰਦੇ ਹਾਂ । | |
04:54 | ਇਹ ਸਾਡੀ ਰਿਟਰਨ ਸਟੇਟਮੈਂਟ ਹੈ । | |
04:56 | ਹੁਣ ਪ੍ਰੋਗਰਾਮ ਚਲਾਉਂਦੇ ਹਾਂ । | |
04:58 | ਆਪਣੇ ਟਰਮੀਨਲ ‘ਤੇ ਵਾਪਸ ਆਉਂਦੇ ਹਾਂ । | |
05:01 | ਹੁਣ ਕੰਪਾਇਲ ਕਰਦੇ ਹਾਂ ਟਾਈਪ ਕਰੋ ‘g++ ਸਪੇਸ default ਡਾਟ cpp ਸਪੇਸ hyphen o ਸਪੇਸ def’ | |
05:09 | ਐਂਟਰ ਦਬਾਓ । | |
05:10 | ਟਾਈਪ ਕਰੋ ‘dot slash def’ | |
05:12 | ਐਂਟਰ ਦਬਾਓ । | |
05:14 | ਆਉਟਪੁਟ ਇਸ ਤਰ੍ਹਾਂ ਨਾਲ ਰਿਟਰਨ ਹੁੰਦੀ ਹੈ, | |
05:16 | ‘Difference is 4’ | |
05:18 | ਆਪਣੇ ਪ੍ਰੋਗਰਾਮ ‘ਤੇ ਵਾਪਸ ਆਉਂਦੇ ਹਾਂ । | |
05:20 | ਇੱਥੇ ਤੁਸੀਂ ਵੇਖ ਸਕਦੇ ਹੋ ਕਿ ਅਸੀਂ ਫੰਕਸ਼ਨ ਵਿੱਚ ਆਰਗਿਊਮੈਂਟਸ ਪਾਸ ਕੀਤੇ ਹਨ । | |
05:25 | ਅਤੇ ਸਾਡੀ ਪਿਛਲੀ ਉਦਾਹਰਣ ਵਿੱਚ ਅਸੀਂ ‘Object’ ਵਿੱਚ ਆਰਗਿਊਮੈਂਟਸ ਪਾਸ ਕੀਤੇ । | |
05:30 | ਅਤੇ ਇੱਥੇ ‘objects’ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਅਸੀਂ ਆਰਗਿਊਮੈਂਟਸ ਪਾਸ ਕੀਤੇ । | |
05:34 | ਹੁਣ ਆਪਣੀ ਸਲਾਇਡਸ ‘ਤੇ ਵਾਪਸ ਆਉਂਦੇ ਹਾਂ । | |
05:38 | ਸਾਰ ਕਰਦੇ ਹਾਂ, ਇਸ ਟਿਊਟੋਰਿਅਲ ਵਿੱਚ ਅਸੀਂ ਸਿੱਖਿਆ, | |
05:41 | ‘Constructors’ ਉਦਾਹਰਣ ‘Addition’ | |
05:43 | ‘Parameterized Constructor’ ਉਦਾਹਰਣ ‘Addition obj (3, 4);’ | |
05:48 | ‘Destructors’ ਉਦਾਹਰਣ ‘~ Addition’ | |
05:52 | ‘ਡਿਫਾਲਟ Constructor’ ਉਦਾਹਰਣ ‘Subtraction’ | |
05:55 | ਨਿਰਧਾਰਤ ਕੰਮ ਵਿੱਚ, ‘Division’ ਨਾਂ ਵਾਲੀ ਕਲਾਸ ਬਣਾਓ । | |
05:59 | ਉਸ ਕਲਾਸ ਲਈ ਕੰਸਟਰਕਟਰ ਬਣਾਓ । | |
06:01 | ਅਤੇ ਇੱਕ ਫੰਕਸ਼ਨ ‘divide ਬਣਾਓ ਜੋ ਦੋ ਦਿੱਤੇ ਨੰਬਰਸ ਨੂੰ ਡਿਵਾਇਡ ਕਰੇ । | |
06:06 | http://spoken-tutorial.org/What\_is\_a\_Spoken\_Tutoria ‘ਤੇ ਉਪਲੱਬਧ ਵੀਡੀਓ ਨੂੰ ਵੇਖੋ । | |
06:09 | ਇਹ ਸਪੋਕਨ ਟਿਊਟੋਰਿਅਲ ਪ੍ਰੋਜੇਕਟ ਦਾ ਸਾਰ ਕਰਦਾ ਹੈ । | |
06:11 | ਚੰਗੀ ਬੈਂਡਵਿਡਥ ਨਾ ਮਿਲਣ ‘ਤੇ ਤੁਸੀਂ ਇਸਨੂੰ ਡਾਊਂਨਲੋਡ ਕਰਕੇ ਵੀ ਵੇਖ ਸਕਦੇ ਹੋ । | |
06:16 | ਸਪੋਕਨ ਟਿਊਟੋਰਿਅਲ ਪ੍ਰੋਜੇਕਟ ਟੀਮ, ਸਪੋਕਨ ਟਿਊਟੋਰਿਅਲਸ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਵਰਕਸ਼ਾਪਾਂ ਚਲਾਉਂਦੀ ਹੈ । | |
06:21 | ਆਨਲਾਇਨ ਟੈਸਟ ਪਾਸ ਕਰਨ ਵਾਲਿਆ ਨੂੰ ਪ੍ਰਮਾਣ ਪੱਤਰ ਵੀ ਦਿੰਦੇ ਹਨ । | |
06:25 | ਜ਼ਿਆਦਾ ਜਾਣਕਾਰੀ ਲੈਣ ਦੇ ਲਈ, ਕ੍ਰਿਪਾ ਕਰਕੇ contact@spoken-tutorial.org ਨੂੰ ਲਿਖੋ । | |
06:31 | ਸਪੋਕਨ ਟਿਊਟੋਰਿਅਲ ਪ੍ਰੋਜੈਕਟ ਟਾਕ-ਟੂ-ਅ ਟੀਚਰ ਪ੍ਰੋਜੇਕਟ ਦਾ ਹਿੱਸਾ ਹੈ । | |
06:36 | ਇਹ ਭਾਰਤ ਸਰਕਾਰ ਦੇ ਐਮਐਚਆਰਡੀ ਦੇ “ਆਈਸੀਟੀ ਵਲੋਂ ਰਾਸ਼ਟਰੀ ਸਾਖਰਤਾ ਮਿਸ਼ਨ” ਦੁਆਰਾ ਪ੍ਰਮਾਣਿਤ ਹੈ । | |
06:42 | ਇਸ ‘ਤੇ ਜ਼ਿਆਦਾ ਜਾਣਕਾਰੀ ਹੇਠਾਂ ਦਿੱਤੇ ਲਿੰਕ ‘ਤੇ ਉਪਲੱਬਧ ਹੈ । http://spoken-tutorial.org/NMEICT-Intro | |
06:47 | ਆਈ.ਆਈ.ਟੀ ਬੰਬੇ ਤੋਂ ਮੈਂ ਨਵਦੀਪ ਤੁਹਾਡੇ ਤੋਂ ਇਜਾਜ਼ਤ ਲੈਂਦਾ ਹਾਂ । ਸਾਡੇ ਨਾਲ ਜੁੜਨ ਲਈ ਧੰਨਵਾਦ । | } |