0%

最近因為某個教授的要求,希望windows開機就可以自動vpn連線,所以這部份花了一些時間去研究,雖然我認為每次開機自己動手點兩下好像也沒有多困難阿~冏

Read more »

在寫C++的時候,常常會使用new來獲取heap的空間,來取得heap的空間,如下。

1
2
3
4
5
6
7
8
9
void Test1(){
char* name = new char(100);
//process something
delete name;
}
char* GetHeap(char* name){
char* name = new char(100);
return name;
}

然而對程式設計師來說,最麻煩的過於一旦new出空間後,一定要執行delete把空間回收,以免發生memory leak的行為

Read more »

C++中,有所謂的顯性轉換跟隱性轉換

在宣告時,加入explicit 這個關鍵字,可以禁止使用顯性轉換,以下為例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
using namespace std;
class Stack {
public:
Stack(int a){};
};
void Test(Stack b){
}
int main()
{
Stack s1 = 1; //ok
Stack s2 = Stack(12); //ok
Stack s3(s1); //ok
Test(123); //ok
return 0;
}

Read more »

有時候根據應用需求,會需要針對去檢查目前系統上有哪些port正在被使用

#[FreeBSD]

可以使用 sockstat 這個command 來檢查系統上port的使用。

USER COMMAND PID FD PROTO LOCAL ADDRESS FOREIGN ADDRESS

root cron 93468 4 udp4 :638 :*

在預設的情況下,會輸出

使用者名稱,執行的程序,該程序的pid,在該程序中使用該port的file descriptor是多少 使用何種協定,以及address

如果使用 sockstat -4lP tcp 就可以找出 使用tcp & ipv4 ,並且正在listen的port

這對於要尋找是否有人在寫Socket programming來說是很方便的。

詳細的可以man sockstat


Read more »