[小小測試] C/C++ 與 Java、struct 與 class 用法比較
豆知識:更好的 struct 初始化
就像大家先前所看到的,我們在初始化 struct 的時候,會使用如下寫法
Rectangle r1; r1.len=5; r1.width=10;
但是,這種一個一個指定的方法實在很沒效率,所以我們可以換個方法寫(完整原始碼)
Rectangle r1 = {5, 10};
不只如此,它還可以一次初始化多種型別喔!(範例如下)
#include <iostream>
#include <stdlib.h>
using namespace std;
typedef struct
{
    int CStructInt;
    double CStructDouble;
    char CStructChar;
    char CStructCharSet[10];
}CStruct;
int main()
{
    CStruct cst1 = {1, 2.0,'3', "4"};
    cout << "CStructInt=\t" << cst1.CStructInt << '\n';
    cout << "CStructDouble=\t" << cst1.CStructDouble << '\n';
    cout << "CStructChar=\t" << cst1.CStructChar << '\n';
    cout << "CStructCharSet=\t" << cst1.CStructCharSet << '\n';
    // system("pause");
    return 0;
}
豆知識:更好的 return 寫法
在前面前面的範例中,我們用了好多 method,其中有一部分只有 return 變數數值的功能,為了這樣普通的功能,造成 CPU 與記憶體的額外負擔?這根本沒道理!
int returnCStructInt()
{
    return cStructInt;
}
▲ 原先的寫法
為了解決這個問題,我們可以使用 inline 用法,這樣就可以兼顧效能和程式結構的易讀性了呢!
inline int returnCStructInt()
{
    return cStructInt;
}
▲ 升級後的寫法(完整程式碼)
想知道小獅參考了哪些資料嗎?請看下一頁!
![[Java練習題] 使用 String 中的 function 替換字串](;https://img.alexleo.click/teambob/java-coffee.png) 
																			 
																											 
																											![[Linux] 如何使用 LUKS 建立加密的磁碟映像檔](https://img.alexleo.click/Team-BoB_luks_disk_image/pixy.org_97715-small.jpg) 
																											![[筆記] Matplotlib 使用上的一些建議](https://img.alexleo.click/Team-BoB_matplotlib_notes/title.jpg) 
																											![[Git 筆記] merge、squash、rebase 三種方式的比較](https://img.alexleo.click/Team-BoB_git_merge_squash_rebase/cover.jpg) 
																											![[JavaScript] 手把手一起入門(二) – 變數 & 基本操作](;https://img.alexleo.click/teambob/WHATWG_JavaScript_logo.png) 
																											![[Linux] 如何安裝 Eclipse 在 Ubuntu 14.04](;https://img.alexleo.click/teambob/eclipse.png) 
																											![[C/C++] Linklist 的架構與使用](;https://img.alexleo.click/teambob/2405613966_c68110ca76_o.jpg) 
																											
Ya~ Facebook 登入成功!