Lably
Skip to content

Code cleanup

Aspect of computer programming

  • 5 min read
  • 3 chapters

Related on Lably

Through Python (programming language), JavaScript and Java (programming language)

Examples

C++

In C++, code cleanup involves deallocating previously allocated dynamic memory.

This is usually done with the C++ delete and delete[] operations.

<span id="mwGQ"></span><span class="kt" id="mwGg">int</span><span class="w" id="mwGw"> </span><span class="n" id="mwHA">x</span><span class="w" id="mwHQ"> </span><span class="o" id="mwHg">=</span><span class="w" id="mwHw"> </span><span class="mi" id="mwIA">15</span><span class="p" id="mwIQ">;</span> <span class="kt" id="mwIg">int</span><span class="o" id="mwIw">*</span><span class="w" id="mwJA"> </span><span class="n" id="mwJQ">mySequence</span><span class="w" id="mwJg"> </span><span class="o" id="mwJw">=</span><span class="w" id="mwKA"> </span><span class="k" id="mwKQ">new</span><span class="w" id="mwKg"> </span><span class="kt" id="mwKw">int</span><span class="p" id="mwLA">[</span><span class="n" id="mwLQ">x</span><span class="p" id="mwLg">];</span> <span class="k" id="mwLw">for</span><span class="w" id="mwMA"> </span><span class="p" id="mwMQ">(</span><span class="kt" id="mwMg">int</span><span class="w" id="mwMw"> </span><span class="n" id="mwNA">i</span><span class="w" id="mwNQ"> </span><span class="o" id="mwNg">=</span><span class="w" id="mwNw"> </span><span class="mi" id="mwOA">0</span><span class="p" id="mwOQ">;</span><span class="w" id="mwOg"> </span><span class="n" id="mwOw">i</span><span class="w" id="mwPA"> </span><span class="o" id="mwPQ"><</span><span class="w" id="mwPg"> </span><span class="n" id="mwPw">x</span><span class="p" id="mwQA">;</span><span class="w" id="mwQQ"> </span><span class="n" id="mwQg">i</span><span class="o" id="mwQw">++</span><span class="p" id="mwRA">)</span><span class="w" id="mwRQ"> </span><span class="p" id="mwRg">{</span> <span class="w" id="mwRw"> </span><span class="n" id="mwSA">mySequence</span><span class="p" id="mwSQ">[</span><span class="n" id="mwSg">i</span><span class="p" id="mwSw">]</span><span class="w" id="mwTA"> </span><span class="o" id="mwTQ">=</span><span class="w" id="mwTg"> </span><span class="mi" id="mwTw">0</span><span class="p" id="mwUA">;</span> <span class="p" id="mwUQ">}</span> <span class="n" id="mwUg">mySequence</span><span class="p" id="mwUw">[</span><span class="mi" id="mwVA">0</span><span class="p" id="mwVQ">]</span><span class="w" id="mwVg"> </span><span class="o" id="mwVw">=</span><span class="w" id="mwWA"> </span><span class="mi" id="mwWQ">-127</span><span class="p" id="mwWg">;</span> <span class="k" id="mwWw">delete</span><span class="p" id="mwXA">[]</span><span class="w" id="mwXQ"> </span><span class="n" id="mwXg">mySequence</span><span class="p" id="mwXw">;</span>

PHP

In PHP there is the unset function.

<span id="mwag"></span><span class="nv" id="mwaw">$foo</span> <span class="o" id="mwbA">=</span> <span class="mi" id="mwbQ">123</span><span class="p" id="mwbg">;</span> <span class="nb" id="mwbw">unset</span><span class="p" id="mwcA">(</span><span class="nv" id="mwcQ">$foo</span><span class="p" id="mwcg">);</span>

Python

In Python 3, explicit deletion of variables requires the del keyword.

<span id="mwfg"></span><span class="n" id="mwfw">x</span> <span class="o" id="mwgA">=</span> <span class="mi" id="mwgQ">15</span> <span class="n" id="mwgg">my_sequence</span> <span class="o" id="mwgw">=</span> <span class="p" id="mwhA">[</span><span class="mi" id="mwhQ">0</span> <span class="k" id="mwhg">for</span> <span class="n" id="mwhw">useless_variable</span> <span class="ow" id="mwiA">in</span> <span class="nb" id="mwiQ">range</span><span class="p" id="mwig">(</span><span class="n" id="mwiw">x</span><span class="p" id="mwjA">)]</span> <span class="n" id="mwjQ">my_sequence</span><span class="p" id="mwjg">[</span><span class="mi" id="mwjw">0</span><span class="p" id="mwkA">]</span> <span class="o" id="mwkQ">=</span> <span class="o" id="mwkg">-</span><span class="mi" id="mwkw">127</span> <span class="k" id="mwlA">del</span> <span class="n" id="mwlQ">my_sequence</span>

JavaScript

In JavaScript, objects are garbage collected if they are unreachable from the global object. One way to make an object unreachable is to overwrite the variables or properties that reference it.

<span id="mwnw"></span><span class="kd" id="mwoA">let</span><span class="w" id="mwoQ"> </span><span class="nx" id="mwog">x</span><span class="w" id="mwow"> </span><span class="o" id="mwpA">=</span><span class="w" id="mwpQ"> </span><span class="p" id="mwpg">{};</span><span class="w" id="mwpw"> </span><span class="c1" id="mwqA">// The variable x is declared and set to an object</span> <span class="nx" id="mwqQ">x</span><span class="w" id="mwqg"> </span><span class="o" id="mwqw">=</span><span class="w" id="mwrA"> </span><span class="kc" id="mwrQ">null</span><span class="p" id="mwrg">;</span><span class="w" id="mwrw"> </span><span class="c1" id="mwsA">// x is overwritten and the object becomes unreachable</span>

Java

In Java, variables cannot be truly deleted. The most that can be done is to set the variable to null, which works with any Java object, including arrays.

<span id="mwuw"></span><span class="kt" id="mwvA">int</span><span class="w" id="mwvQ"> </span><span class="n" id="mwvg">x</span><span class="w" id="mwvw"> </span><span class="o" id="mwwA">=</span><span class="w" id="mwwQ"> </span><span class="mi" id="mwwg">15</span><span class="p" id="mwww">;</span> <span class="kt" id="mwxA">int</span><span class="o" id="mwxQ">[]</span><span class="w" id="mwxg"> </span><span class="n" id="mwxw">my_sequence</span><span class="w" id="mwyA"> </span><span class="o" id="mwyQ">=</span><span class="w" id="mwyg"> </span><span class="k" id="mwyw">new</span><span class="w" id="mwzA"> </span><span class="kt" id="mwzQ">int</span><span class="o" id="mwzg">[</span><span class="n" id="mwzw">x</span><span class="o" id="mw0A">]</span><span class="p" id="mw0Q">;</span> <span class="k" id="mw0g">for</span><span class="w" id="mw0w"> </span><span class="p" id="mw1A">(</span><span class="kt" id="mw1Q">int</span><span class="w" id="mw1g"> </span><span class="n" id="mw1w">i</span><span class="w" id="mw2A"> </span><span class="o" id="mw2Q">=</span><span class="w" id="mw2g"> </span><span class="mi" id="mw2w">0</span><span class="p" id="mw3A">;</span><span class="w" id="mw3Q"> </span><span class="n" id="mw3g">i</span><span class="w" id="mw3w"> </span><span class="o" id="mw4A"><</span><span class="w" id="mw4Q"> </span><span class="n" id="mw4g">x</span><span class="p" id="mw4w">;</span><span class="w" id="mw5A"> </span><span class="n" id="mw5Q">i</span><span class="o" id="mw5g">++</span><span class="p" id="mw5w">)</span><span class="w" id="mw6A"> </span><span class="p" id="mw6Q">{</span> <span class="w" id="mw6g"> </span><span class="n" id="mw6w">my_sequence</span><span class="o" id="mw7A">[</span><span class="n" id="mw7Q">i</span><span class="o" id="mw7g">]</span><span class="w" id="mw7w"> </span><span class="o" id="mw8A">=</span><span class="w" id="mw8Q"> </span><span class="mi" id="mw8g">0</span><span class="p" id="mw8w">;</span> <span class="p" id="mw9A">}</span> <span class="n" id="mw9Q">my_sequence</span><span class="o" id="mw9g">[</span><span class="mi" id="mw9w">0</span><span class="o" id="mw-A">]</span><span class="w" id="mw-Q"> </span><span class="o" id="mw-g">=</span><span class="w" id="mw-w"> </span><span class="o" id="mw_A">-</span><span class="mi" id="mw_Q">127</span><span class="p" id="mw_g">;</span> <span class="n" id="mw_w">my_sequence</span><span class="w" id="mwAQA"> </span><span class="o" id="mwAQE">=</span><span class="w" id="mwAQI"> </span><span class="kc" id="mwAQM">null</span><span class="p" id="mwAQQ">;</span>

Sign in to keep reading

2 more chapters are free with a Lably account.

More in Computing and communication